网页获取邮箱并实现qq群发功能

转载请标明出处!

代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Threading;
using System.Net.Mail;
using System.Net;
using System.IO;
using System.Text.RegularExpressions;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private void send(string sender, string pwd, string receiver, string title, string content)
        {
            SmtpClient client = new SmtpClient();//邮箱传输协议类
            client.Host = "smtp.qq.com";//邮件服务器
            client.Port = 25;//smtp主机上的端口号,默认是25.
            client.DeliveryMethod = SmtpDeliveryMethod.Network;//邮件发送方式:通过网络发送到SMTP服务器
            client.Credentials = new NetworkCredential(sender, pwd); //凭证,发件人登录邮箱的用户名和密码

            MailAddress Sender = new MailAddress(sender); //发件人Email,在邮箱是显示
            MailAddress Receiver = new MailAddress(receiver); //收件人Email,在邮箱是显示
            MailMessage mailMessage = new MailMessage(sender, receiver); //创建一个电子邮件类
            mailMessage.Subject =txttitle.Text;//标题
            mailMessage.Body = txtcontent.Text;//内容可为html格式文本
            mailMessage.SubjectEncoding = System.Text.Encoding.UTF8;//邮件主题编码
            mailMessage.BodyEncoding = System.Text.Encoding.GetEncoding("GB2312");//邮件内容编码
            mailMessage.IsBodyHtml = true;//邮件内容是否为html格式
            mailMessage.Priority = MailPriority.High;//邮件的优先级,有三个值:高(在邮件主题前有一个红色感叹号,表示紧急),低(在邮件主题前有一个蓝色向下箭头,表示缓慢),正常(无显示).
            //添加附件
            if (file!=null)
            {
                Attachment ss = new Attachment(file); //file是所选择的文件的路径    Attachment电子邮件的附件
                mailMessage.Attachments.Add(ss);
            }
            //Attachment ss = new Attachment(file); //file是所选择的文件的路径    Attachment电子邮件的附件
            //mailMessage.Attachments.Add(ss);
            try
            {
                client.Send(mailMessage);//发送邮件
                mailMessage.Dispose();//释放资源
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }

        private void button1_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrWhiteSpace(txtadd.Text))
            {
                MessageBox.Show("请添加收件人邮箱");
            }
            else
            {
                ListViewItem lt = new ListViewItem();
                lt.Text = txtadd.Text.Trim();
                listView1.Items.Add(lt);
                txtadd.Text = "";
            }
        }

        private void button2_Click(object sender, EventArgs e)
        {
            for (int i = 0; i < listView1.Items.Count; i++)
            {
                send(txtsend.Text, txtpwd.Text, listView1.Items[i].Text, txtadd.Text,txtcontent.Text);
                Thread.Sleep(2000);
            }
            MessageBox.Show("发送成功");
        }

        private void button3_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            txtsend.Text = "[email protected]";
            txtpwd.UseSystemPasswordChar = true;
             textbiaoti.Text = "http://1111.baidu.com/p/3860763762";
        }
        string file;
        private void button4_Click(object sender, EventArgs e)
        {
            openFileDialog1.Filter = "Word文件.doc|*.doc|表格文件.xls|*.xls|所有文件|*.*"; //筛选文件类型
            DialogResult dr = openFileDialog1.ShowDialog();  //创建一个枚举类型的变量dr来接收打开这个对话框
            if (dr == DialogResult.OK) //如果点的是确定,才会执行下面的代码
            {
                file = openFileDialog1.FileName;//定义一个变量来接收路径
                //创建文件流 来将路径转换
                StreamReader path = new StreamReader(file, Encoding.Default); //Encoding.Default 编码方式
                MessageBox.Show("添加附件成功");
                path.Close();//用完流之后必须关闭
            }
        }

        //---------------------------------------------------------------
        public String GetWebContent(String url, Encoding encode)// encode 编码
        {
            url = textbiaoti.Text.Trim(); //需要获取源代码的网页
            WebRequest request = WebRequest.Create(url); //WebRequest.Create方法,返回WebRequest的子类HttpWebRequest
            WebResponse response = request.GetResponse(); //WebRequest.GetResponse方法,返回对 Internet 请求的响应
            Stream resStream = response.GetResponseStream(); //WebResponse.GetResponseStream 方法,从 Internet 资源返回数据流。
            Encoding enc = Encoding.GetEncoding("utf-8"); // 如果是乱码就改成 utf-8 / GB2312
            StreamReader sr = new StreamReader(resStream, enc); //命名空间:System.IO。 StreamReader 类实现一个 TextReader (TextReader类,表示可读取连续字符系列的读取器),使其以一种特定的编码从字节流中读取字符。
            txtshow.Text = sr.ReadToEnd(); //输出(HTML代码),ContentHtml为Multiline模式的TextBox控件
            return txtshow.Text;
        }
        private void button5_Click(object sender, EventArgs e)
        {
            try
            {
                string x = GetWebContent(textbiaoti.Text, Encoding.UTF8);
                txtshow.Text = "";
                Regex r = new Regex(@"([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})");//正则
                System.Text.RegularExpressions.MatchCollection mc = r.Matches(x);
                for (int i = 0; i < mc.Count; i++)
                {
                    if (mc.Count == 0)
                    {
                        txtshow.Text = "未查询到符合邮箱地址的信息。";
                    }
                    else
                    {
                        txtshow.Text += mc[i].Value + "\r\n";
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("获取网站信息错误:" + ex.Message);
            }
        }

        private void button6_Click(object sender, EventArgs e)
        {
            ListViewItem lt = new ListViewItem();
            lt.Text = txtshow.SelectedText;
            listView1.Items.Add(lt);
        }
    }
}
时间: 2024-11-09 02:21:37

网页获取邮箱并实现qq群发功能的相关文章

网页中插入QQ在线功能

网页中插入QQ在线功能 本随笔记录的是网页中如何插入qq在线聊天,这里讲解的是 普通QQ在线聊天操作. 例:第一种方式  使用 tencent://message/?uin=QQ号码&Site=blog.sina.com.cn&Menu=yes 链接来操作 这里注意 img标签,这里例出三种样式的img,区别仅仅在于QQ号码后面的端口号之间 <h2>第一种链接方式</h2> <A target="_blank" href="ten

小白学react之网页获取微信用户信息

通过上一篇<小白学react之EJS模版实战>我们学习了如何通过EJS模版生成我们高定制化的index.html文件. 本篇我们将会继续延续我们的alt-tutorial项目的实战计划,去获取微信扫码用户的信息,并将头像显示在我们页面的右上角上. 最终实战效果将如下所示. 首先根据我们的网站url生成二维码,比如我们可以通过浏览器的FeHelper来生成: 然后用户通过微信扫码: 最后用户确定授权后获取到用户的基本信息,并将头像显示在右上角: 1. 内网穿透准备 我们获取微信用户信息的过程中,

微信公众平台开发(106) 网页获取用户地理位置

关键字:微信公众平台 JSSDK 获取地理位置接口 网页获取用户地理位置 getLocation作者:方倍工作室 原文:http://www.cnblogs.com/txw1958/p/weixin-web-location.html 在这篇微信公众平台开发教程中,我们将介绍如何在网页中获取用户的地理位置信息. 本文分为以下二个部分: 生成JS-SDK权限验证签名 使用地理位置接口获取坐标 一.微信JS-SDK 1. 获得Access Token access token的获得方法在前面有介绍,

网站使用QQ登录功能

一般网站要先做个用户注册的功能页面,但我的网站名气不大,不需要要求用户注册,所以直接使用腾讯QQ登录的API接口. 如何使用JS_SDK让网站拥有QQ登录的功能,官网的这篇文章写得还算完整:http://connect.qq.com/intro/login/jssdk-demo  但是,里面有些地方并没有填写“实例”,只是说那个地方需要填写什么东西,但有时这样说是不够的,我就是试了挺多遍才知道填写的格式. 所以我重新整理下过程. 一:准备工作 域名注册,空间购买,网站接入申请这些我就不说了.使用

爬虫获取邮箱,存入数据库,发送邮件java Mail

在网页上获取邮箱: package com.my.test; import java.io.BufferedReader; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; import java.sql.Statement; import java.util.regex.Matcher; import java.util.regex.Pattern; public

h5 网页版的微博微信QQ登录

一:微博 1,先说微博吧,首先你的去http://open.weibo.com/wiki/先注册账号,通过验证审核.然后的创建网页应用.微博审核不通过的原因就是域名和网站地址,一定要按实际写的.一定要记得在微博这里设置回调页.然后根据微博开发文档一步一步下来. 2.微博的获取code的地址,是不用urlencode编码的,这个跟微信QQ不同.从客服端获取到code之后,我们是传入服务端的.因为微博第获取acces_token必须要求post请求,微博后台做了不能跨域这是第一个原因.第二个原因是a

微信公众平台网页获取用户OpenID方法

下面我们一起来看看关于微信公众平台网页获取用户OpenID方法,有需要了解的朋友可以一起来看看吧.用户点击微信自定义菜单view类型按钮后,微信客户端将会打开开发者在按钮中填写的url值 (即网页链接),达到打开网页的目的,但是view不能获取用户的openid,需要使用微信“网页授权获取用户基本信息”高级接口结合使用,获得用户的登入个人信息.具体方法1.配置网页授权回调域名,如 www.111cn.net2.模拟公众号的第三方网页,http://www.111cn.net/getcodeurl

微信快速开发框架V2.3--增加语音识别及网页获取用户信息(八),代码已更新至Github

不知不觉,版本以每周更新一次的脚步进行着,接下来应该是重构我的代码及框架的结构,有朋友反应代码有点乱,确实如此,当时写的时候只是按照订阅号来写的,后来才慢慢增加到支持API接口.目前还在开发第三方微信平台,旨在使用户能够无需自己开发就能简易搭建微信平台. 更新内容 1.增加支持语音识别 2.增加"网页授权获取用户基本信息" 语音识别其实是对Voice信息的一个扩展,您必须启用语音识别功能,启用后会在VoiceMessage中增加一个Recongnition字段,我们可以判断这个字段的内

网站集成QQ登录功能(转)

最近在做一个项目时,客户要求网站能够集成QQ登录的功能,以前没做过这方面的开发,于是去QQ的开放平台官网研究了一下相关资料,经过自己的艰苦探索,终于实现了集成QQ登录的功能,现在把相关的开发经验总结一下,希望对有这方面需求的朋友有所帮助. 一.前期准备 首先你需要登录QQ的开发平台注册一个账号,QQ互联平台官方地址:http://connect.qq.com/ 进去后注册一个开发账号,完了登录后台会有类似如下的一个后台,填好相关信息,具体可以参考下图.最后我们会有一个APP ID和APP KEY