c#使用pop3服务器进行邮箱验证
2017-10-30 11:48
197 查看
环境
开发环境:.net4.0+vs2013操作系统:win8.1
内容
由于项目需要,拟开发一个模块进行邮箱验证操作,最终采取使用pop3服务器进行邮箱登陆并且获取内容编码
/// <summary> /// 点击链接 /// </summary> /// <param name="info"></param> /// <returns></returns> public static bool Click2(Info info) { //GC.Collect(); using (POP3_Client pop3 = new POP3_Client()) { //选择pop3服务器的地址,这里只提供了189和139邮箱 有需要的可以自己去加 pop3.Logger = new Logger(); string _url = ""; if (info.Email.Contains("@189.cn")) { _url = "pop.189.cn"; } 4000 else if (info.Email.Contains("@")) { _url = "pop.139.com"; } else { return false; } //连接pop3服务器 pop3.Connect(_url, 110, false); //尝试登陆 try { pop3.Authenticate(info.Email, info.PassWord, true); } catch (Exception ex) { return false; } //逆序遍历,可以获得最新的邮件内容 for (int i = pop3.Messages.Count - 1; i >= 0; i--) { POP3_ClientMessage message = pop3.Messages[i]; try { Mail_Message mime = Mail_Message.ParseFromByte(message.MessageToByte()); string text = mime.BodyHtmlText; //根据关键词判断是否为自己需要读取的邮件 if (text.Contains("Confirm your signature by clicking here.")) { //正则获得需要点击的链接并且点击 string url = MyTool.MyRegex.StringRegex(text, @"<p><strong><a href=""([\s\S]*?)"""); url = url.Replace("amp;", ""); string html = HttpAdd.OnlyGetHtml(url);//点击链接 if (html.Contains("You've successfully signed the petition below. Your signature has been verified and counted.")) { return true; } else { return false; } } } catch (Exception ex) { } } } return false; }
第三方类库
实现此模块需要基于LumiSoft.Net该类库百度网盘下载链接:
http://pan.baidu.com/s/1kU5BXrh 密码:evtv
相关文章推荐
- 回发或回调参数无效。在配置中使用 或在页面中使用 启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据有效并且是预期的,则使用 ClientScriptManager.RegisterForEventValidation 方法来注册回发或回调数据以进行验证。
- ASP.NET - 如何:使用自定义函数对 ASP.NET 服务器控件进行验证
- 组建使用“智能卡”进行身份验证的***服务器
- 服务器控件使用js进行验证(选择地调用后台事件)
- 如何:使用自定义函数对 ASP.NET 服务器控件进行验证
- 如何使用C#访问POP3服务器(转)
- 验证控件内容是否为空写法二(使用服务器控件进行非空验证的前台代码)
- 服务器控件使用Javascript进行验证(选择地调用后台事件)
- 使用支持Pop3的邮箱给好友群发邮件. C# .Net 2.0 邮件发送 + XML 读取操作代码.
- 在IIS中使用Windows域服务器域摘要式身份验证对Web应用程序进行访问控
- 一个基于POP3协议进行邮箱账号验证的类
- 如何使用C#访问POP3服务器(英文)
- iOS使用ASIHttpRequest+Json与服务器段脚本进行登陆验证
- C#中使用正则表达式验证电话号码、手机号、身份证号、数字、邮编、时间(仅年月日)、邮箱、小数的正则表达式
- 在IIS中使用Windows域服务器域摘要式身份验证对Web应用程序进行访问控
- 使用RSA进行注册码验证--c#
- C#使用.net.mail配置163邮箱报错:不允许使用邮箱名称。 服务器响应为:authentication is required,smtp9,DcCowABHK4UYE11W2k6fAQ--.52196S2 1448940312
- 如何使用C#访问POP3服务器
- 在C#中使用访问者(Visitor)模式对组合(Composite)对象进行验证
- 回发或回调参数无效。在配置中使用 或在页面中使用 启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据有效并且是预期的,则使用 ClientScriptManager.RegisterForEventValidation 方法来注册回发或回调数据以进行验证。