使用VB实现邮箱自动注册
前些天在网上看到有人需要邮箱自动注册的程序,于是自己也写了一个,在查资料的过程中我看到一些网友写的类似文章,有一些是基于网络协议,需要了解session,cookie这些东西,对于一个新手来说很繁琐,等到把这些东西搞懂,热情也消耗殆尽。vb的优点就在于可以让那些对于计算机底层不是很了解的人迅速实现自己的程序设计,我找到了一种比较简单的办法,要求对html标记语言有所了解即可,现在把自己的经验写出来于各位网友共享,该方法也许不值一提,也许对您有所帮助。
我的办法就是利用控件webbrowser,我想很多人对它都很熟悉,在新建一个工程之后您要做的是添加两个控件,一个是webbrowser,另一个是scriptlet,这两个控件配合使用,就可以完成这个任务了,scriptlet中的ihtmldocument2对象可以用来获得webbrowser控件中的html文档。这两个控件的名字在组件对话框里分别叫microsoft html object library和microsoft internet controls。
这两个控件添加完成之后,你还需要知道webbrowser的一个事件documentcomplete,这个事件在整个网页下载完成之后触发,也就是说在页面完成之后这个事件即被执行,有了这些就可以顺利的实现注册了。
下面以eyou网站的免费邮箱注册为例来实现我的程序设计,新建标准工程后向form中添加一个webbrowser控件。所有代码如下:
dim ii as integer
private sub form_load()
webbrowser1.navigate "http://freemail.eyou.com/signup.html?bgp=%ce%d2%bd%d3%ca%dc&bgp_enable=on"
end sub
private sub webbrowser1_documentcomplete(byval pdisp as object, url as variant)
dim doc as ihtmldocument2
set doc = webbrowser1.document
dim tmp as string
if instr(doc.body.innertext, "寻找一个新的用户名") > 0 then
tmp = "sdfsdf23" + trim(str$(ii))
doc.all.item("uid").focus
sendkeys tmp
sendkeys "{enter}"
end if
if instr(doc.body.innertext, "输入您的个人资料") > 0 then
doc.all.item("password").value = "123456"
doc.all.item("confirm").value = "123456"
doc.all.item("firstname").value = "tomcant"
doc.all.item("question").value = "what is your name"
doc.all.item("answer").value = "my name is ddd"
doc.all.item("year").value = "80"
doc.all.item("month").value = "3"
doc.all.item("day").value = "18"
doc.all.item("day").focus
sendkeys "{enter}"
end if
if instr(doc.body.innertext, "申请邮箱成功") > 0 then
ii = ii + 1
webbrowser1.navigate "http://freemail.eyou.com/signup.html?bgp=%ce%d2%bd%d3%ca%dc&bgp_enable=on"
end if end sub
© 2006-2008 All Rights Reserved
|