苏飞论坛
标题: 网易163邮箱post注册机 [打印本页]
作者: Firefly1992 时间: 2014-2-2 23:33
标题: 网易163邮箱post注册机
本帖最后由 Firefly1992 于 2014-7-18 14:10 编辑
前几天有个软件需要大批邮箱,想想可是一个个注册太麻烦了。经过一个星期的研究,写了这个程序,虽然还是很麻烦,不过比起网页上注册已经够方便的了。只需要填写验证码,用户名都不用考虑,直接生成可用的随即字符串。
在此分享给大家,大家看看有什么需要改进的地方可以回复我哦~
ps:没有加入代理服务器,不知道加入后程序运行会不会很慢啊。而且代理服务器怎么测试?如果不能用怎么办?没有接触过这方面的东西,苏大大能给讲一下吗?
本程序基于苏飞的HttpHelper。
在此只贴部分主要代码了。
首次登陆
[C#] 纯文本查看 复制代码
public bool MainPageLoad()
{
HttpHelper http = new HttpHelper();
HttpItem item = new HttpItem()
{
URL = Webroot + "?cmd=register.entrance&from=163mail",
Method = "get",
Cookie = this.Cookie,
ContentType = "application/x-www-form-urlencoded",
};
HttpResult result = http.GetHtml(item);
string retMsg = result.Html;
this.Cookie = result.Cookie;
this.Envalue = retMsg.Substring(retMsg.IndexOf("envalue") + 11, 6);
return true;
}
保持会话
[C#] 纯文本查看 复制代码
public bool CreateSSL()
{
HttpHelper http = new HttpHelper();
HttpItem item = new HttpItem()
{
URL = String.Format("https://ssl.mail.163.com/regall/unireg/prepare.jsp?sid={0}&sd={1}", this.JsessionID, this.ser_adapter),
Method = "get",
Cookie = this.Cookie,
KeepAlive = true,
ContentType = "application/x-www-form-urlencoded",
};
HttpResult result = http.GetHtml(item);
string retMsg = result.Html;
//返回5个回车
if (retMsg == @"
")
return true;
return false;
}
获取验证码
[C#] 纯文本查看 复制代码
public Image getvCode(bool type)
{
string env = JScript.env(this.Envalue).ToString();
string t = JScript.getTime().ToString();
string Url = Webroot;
if (type)
Url += String.Format("?cmd=register.verifyCode&v=common/verifycode/vc_en&env={0}&t={1}", env, t);
else
Url += String.Format("?cmd=register.verifyCode&v=common/verifycode/vc_zh&vt=grey&env={0}&t={1}", env, t);
HttpHelper http = new HttpHelper();
HttpItem item = new HttpItem()
{
URL = Url,
Method = "get",
ResultType = ResultType.Byte,
ContentType = "application/x-www-form-urlencoded",
};
HttpResult result = http.GetHtml(item);
Image img = byteArrayToImage(result.ResultByte);
return img;
}
提交数据
[C#] 纯文本查看 复制代码
public string Submit(string password, string vcode)
{
HttpHelper http = new HttpHelper();
HttpItem item = new HttpItem()
{
URL = String.Format("https://ssl.mail.163.com/regall/unireg/call.do;jsessionid={0}?cmd=register.start", this.JsessionID),
Method = "POST",
ContentType = "application/x-www-form-urlencoded",
Postdata = String.Format("name={0}&flow=main&uid={0}%40163.com&password={1}&confirmPassword={1}&mobile=&vcode={2}&from=163mail", this.Name, password, vcode),
};
HttpResult result = http.GetHtml(item);
string retMsg = result.Html;
return retMsg;
}
二次验证
[C#] 纯文本查看 复制代码
public string Resume(string code)
{
HttpHelper http = new HttpHelper();
HttpItem item = new HttpItem()
{
URL = Webroot + "?cmd=register.resume",
Method = "POST",
ContentType = "application/x-www-form-urlencoded",
Postdata = String.Format("vcode={0}&uid={1}%40163.com&suspendId={2}", ConvertToUtf8(code), this.Name, this.SuspendID),
Cookie = this.Cookie,
};
HttpResult result = http.GetHtml(item);
string retMsg = result.Html;
return retMsg;
}
程序下载地址
重新更正了下载地址,谢谢大家支持。
http://www.sufeinet.com/forum.php?mod=attachment&aid=MzYyMnw5YmEzNjUxYjVmZmZlMmNiNDhmNDc4ODAwZDBmZjgwZnwxNzMyNDQyMzUx&request=yes&_f=.rar
作者: Firefly1992 时间: 2014-2-2 23:35
这个主要在验证码的获取上下了好大的功夫。用js里面的东西算了个值出来,搞了2,3天,不过还好终于搞出来了。
作者: maguan 时间: 2014-2-3 00:03
支持一下
作者: 站长苏飞 时间: 2014-2-3 00:36
强烈支持楼主ing……
作者: Lese 时间: 2014-2-3 00:41
不错 不错!!
作者: Firefly1992 时间: 2014-2-3 01:03
苏飞站长,我想问下,你的那个代理ip,如果是没有用户名的代理只要设置porxyip就行了吗?
还有代码用上感觉没什么延迟或者区别,怎么样才能检测到使用了代理?
作者: cload 时间: 2014-2-3 13:48
设置代理后查询自己的IP,与代理一致,则说明应用成功了。
作者: Firefly1992 时间: 2014-2-3 15:58
是设置item里面的ProxyIP啊,设置了在哪里能查到IP?怎么查?能详细点吗?
作者: LinnMM 时间: 2014-2-3 16:45
用代理的话,注册效率会高很多
作者: cload 时间: 2014-2-3 21:20
请求:http://iframe.ip138.com/ic.asp
ProxyIp = "ip:port",
明白了吧?
作者: Firefly1992 时间: 2014-2-3 23:17
非常感谢你帮了我的大忙,真的太感谢你啦!
这样可以。谢谢了。
作者: im0khu 时间: 2014-2-8 17:29
我也最近重新写了个
现在网易二次验证码是中文的了。
作者: Firefly1992 时间: 2014-2-8 23:48
是的,但还不知道怎么过二次验证。好像某个IP第一次注册不需要第二次验证,我写的过程中测试时候用代理IP有一些就不需要二次验证。不知道有没有关系。
作者: im0khu 时间: 2014-2-9 16:55
同一IP注册间隔短,注册的太频繁,都有可能出现2次验证码。这是没法避免和绕过的。如果有多个IP,可以一IP注册一个
然后再轮回。
作者: chidawu 时间: 2014-2-18 14:58
软件下载的地址失效了,楼主有没新的下载地址??其他朋友有没,共享下源码吧。。。
作者: chidawu 时间: 2014-2-18 14:58
软件下载的地址失效了,楼主有没新的下载地址??其他朋友有没,共享下源码吧。。。
作者: gujin162 时间: 2014-2-22 22:28
楼主,下载链接没了。。。
作者: dislove 时间: 2014-2-25 16:34
LZ,能否分享下解析Envalue的JS脚本或逻辑呢?另外,分享的链接已经没有了。。好遗憾,这一块苏飞大大能帮忙科普或补充下吗?研究这个env参数的获取折腾好几天了,还是没看出来和t时间戳、envalue的运算关系
作者: mmgx2013 时间: 2014-3-26 17:20
JS大牛,只可惜下载地址失效了
作者: cload 时间: 2014-3-26 19:44
不复杂,这是我用VB6.0写的,还能用。有需要的我可以转下C#。
作者: shellpro 时间: 2014-4-3 13:52
受教了,学习中……
楼主,网盘的完整代码失效了,能重新传一下,学习中,谢谢。
作者: shellpro 时间: 2014-4-3 13:54
膜拜中……
大大,有需要,麻烦转下c#,好好学习下。
作者: Monn 时间: 2014-4-11 14:11
下载地址已失效。。
作者: 豪侠 时间: 2014-4-12 14:40
本帖最后由 豪侠 于 2014-4-12 14:45 编辑
下面的链接下载不了了,可以发份源码我学习下吗?邮箱:971113420@qq.com
作者: 精彩 时间: 2014-4-14 20:05
我也顶下吧,下载地址失效了,强烈请求楼主帮忙重新上传一份,毕竟分析哪个JS还挺麻烦的,发现需要同时啃#C和JS
作者: LaoMeng 时间: 2014-5-25 18:20
受教了,学习中……代码下载不了了?
作者: Batistuta 时间: 2014-5-27 18:01
求源码,有人下载了吗,发给我参考可否,122314410@qq.com
作者: inghot 时间: 2014-5-30 09:14
哈哈。。支持支持。。。
一直想弄一个。
作者: 天天教程网 时间: 2014-6-2 22:32
麻烦发一份给我,谢谢,1467121219@qq.com
作者: beyondfe 时间: 2014-6-13 10:01
网盘里面没有链接了, 有同学可以分享一份源码吗? 120800781@qq.com. 谢谢啦.
作者: 天天教程网 时间: 2014-6-17 20:34
求个源码,谢谢rain1985@qq.com
作者: 啊Q皇弟 时间: 2014-8-3 00:57
强烈支持楼主。。。。
作者: speed2018 时间: 2014-8-6 13:50
东西很好用,能不能给个工程文件呢
作者: zgy0209zgy 时间: 2014-8-11 11:38
好像出错次数多后软件启动不起来。
作者: inghot 时间: 2014-8-15 10:27
受教了,学习中……
这个真心的不错。。
作者: 被封禁言 时间: 2014-8-27 23:46
强烈支持楼主ing……
作者: hobby666 时间: 2014-11-28 23:17
【错误 1 类型“Microsoft.JScript.INeedEngine”在未被引用的程序集中定义。必须添加对程序集“Microsoft.JScript, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”的引用。 c:\users\hobby9\documents\visual studio 2010\Projects\Mail163\Mail163\Mail.cs 138 13 Mail163】
新建了一个工程,导入了所有的文件,dll也引用了,还提示这个错误呢,请问老大怎么解决呢?谢谢
作者: Firefly1992 时间: 2014-12-22 13:19
自己重建一下不就好了。
作者: Firefly1992 时间: 2014-12-22 13:19
那是因为没有加入IP代理,同一个ip访问次数过多,网易那边会检测的。
作者: Firefly1992 时间: 2014-12-22 13:22
js.dll这个文件你引用了吗?
作者: jerryhuangn 时间: 2015-5-7 15:37
多谢分享,拿去研究一下~!!
欢迎光临 苏飞论坛 (http://www.sufeinet.com/) |
Powered by Discuz! X3.4 |