|
马上加入TC
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 TCwlxiaohei 于 2014-3-15 00:01 编辑
空间 注册机
var 线程句柄1,计数=0,换ip计数=0
功能 初始化()
URL="http://web.4399.com/user/reg.php"
网页.转到("浏览器0",URL)
功能结束
功能 开始注册_点击()
路径=浏览框.获得("浏览框0")
if(路径=="")
辅助.消息框("错误!没有定义账号保存路径")
else
线程句柄1=线程.开启("注册机.注册账号","")
endif
控件.有效("开始注册",假)
功能结束
功能 停止注册_点击()
控件.有效("开始注册",真)
线程.关闭(线程句柄1)
功能结束
功能 注册账号()
var 间隔,账户位数,密码位数,邮箱位数
间隔=编辑框.获得文本("间隔")*1000
while(真)
换ip计数=换ip计数+1
换ip数=编辑框.获得文本("换ip数")
if(换ip计数>换ip数)
注册机.换ip()
endif
返回值=网页.加载完成("浏览器0")
if(返回值==真)
if(下拉框.得到选项("账户位数")==0)
账户位数=12
endif
if(下拉框.得到选项("账户位数")==1)
账户位数=13
endif
if(下拉框.得到选项("账户位数")==2)
账户位数=14
endif
if(下拉框.得到选项("账户位数")==3)
账户位数=15
endif
if(下拉框.得到选项("账户位数")==4)
账户位数=16
endif
if(下拉框.得到选项("账户位数")==5)
账户位数=17
endif
if(下拉框.得到选项("密码位数")==0)
账户位数=12
endif
if(下拉框.得到选项("密码位数")==1)
密码位数=13
endif
if(下拉框.得到选项("密码位数")==2)
密码位数=14
endif
if(下拉框.得到选项("密码位数")==3)
密码位数=15
endif
if(下拉框.得到选项("密码位数")==4)
密码位数=16
endif
if(下拉框.得到选项("密码位数")==5)
密码位数=17
endif
if(下拉框.得到选项("邮箱位数")==0)
邮箱位数=12
endif
if(下拉框.得到选项("邮箱位数")==1)
邮箱位数=13
endif
if(下拉框.得到选项("邮箱位数")==2)
邮箱密码位数=14
endif
if(下拉框.得到选项("邮箱位数")==3)
邮箱位数=15
endif
if(下拉框.得到选项("邮箱位数")==4)
邮箱位数=16
endif
if(下拉框.得到选项("邮箱位数")==5)
邮箱位数=17
endif
账号=注册机.用户名生成(账户位数)
密码=注册机.密码生成(密码位数)
邮箱=注册机.邮箱生成(邮箱位数)
姓名=注册机.姓名生成(2)
身份证=注册机.身份证生成()
网页.输入元素文本("浏览器0",账号,"id:login_name")
网页.输入元素文本("浏览器0",密码,"id:login_password")
网页.输入元素文本("浏览器0",密码,"id:relogin_pwd")
网页.输入元素文本("浏览器0",邮箱,"id:email")
网页.输入元素文本("浏览器0",姓名,"id:true_name")
网页.输入元素文本("浏览器0",身份证,"id:sfz")
辅助.等待(100)
while(真)
url = 网页.得到链接("浏览器0")
if(url=="http://web.4399.com/user/reg.php")
网页.点击元素("浏览器0","id:imageField")
else
text=网页.获取元素信息("浏览器0","text","class:quit global_logout")
if(text =="退出")
写入值=账号&","&密码
注册机.写入账号(写入值)
网页.转到("浏览器0","http://web.4399.com/user/reg.php")
跳出
endif
endif
辅助.等待(100)
endwhile
endif
辅助.等待(间隔)
endwhile
功能结束
///////////////////////////////////////////////////////////////////////////////////////////////////
功能 写入账号(写入值)
路径=浏览框.获得("浏览框0")
文件句柄=文件.打开(路径)
文件句柄=文件.打开(路径)
文件.末尾写入(文件句柄,写入值&"\r\n")
文件.关闭(文件句柄)
计数=计数+1
标签.设置文本("信息提示",写入值&"注册成功"&"|||||||||已经注册成功:"&计数&"个"&"||||||||||||准备注册下一个......")
功能结束
功能 换ip()
错误值=网络.断开("宽带连接")//等待15秒后断开连接
如果(错误值==-1)
标签.设置文本("信息提示","连接断开,准备重新拨号......")
辅助.等待(1000*5)
宽带账号=编辑框.获得文本("账号")
宽带密码=编辑框.获得文本("密码")
错误值= 网络.拨号("宽带连接",宽带账号,宽带密码)
标签.设置文本("信息提示","请稍等,正在拨号中......")
辅助.等待(1000*20)
如果(错误值==0)
标签.设置文本("信息提示","拨号成功,准备继续注册......")
换ip计数=0
如果结束
如果结束
功能结束
///////////////////////////////////////////////////////////////////////////////////////////////////
功能 用户名生成(参数)
var 大小,结果,结果2,位数
英文数字="1,2,3,4,5,6,7,8,9,0,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z"
字符串.分割(英文数字,",",英文数字)
数组空间.大小(英文数字,大小)
for(位数=0;位数<参数;位数++)
n=辅助.随机数(0,35)
结果=英文数字[n]
结果2=结果2&结果
endfor
返回 (结果2)
功能结束
功能 密码生成(参数)
var 大小,结果,结果2,位数
英文数字="1,2,3,4,5,6,7,8,9,0,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z"
字符串.分割(英文数字,",",英文数字)
数组空间.大小(英文数字,大小)
for(位数=0;位数<参数;位数++)
n=辅助.随机数(0,35)
结果=英文数字[n]
结果2=结果2&结果
endfor
返回 (结果2)
功能结束
功能 邮箱生成(参数)
var 大小,结果,结果2,位数
英文数字="1,2,3,4,5,6,7,8,9,0,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z"
字符串.分割(英文数字,",",英文数字)
数组空间.大小(英文数字,大小)
for(位数=0;位数<参数;位数++)
n=辅助.随机数(0,35)
结果=英文数字[n]
结果2=结果2&结果
endfor
返回 (结果2&"@163.com")
功能结束
功能 姓名生成(参数)
var 姓大小,名大小,结果1,结果2,姓结果,名结果
姓 ="赵、钱、孙、李、周、吴、郑、王、冯、陈、褚、卫、蒋、沈、韩、杨、朱、秦、尤、许、何、吕、施、张、孔、曹、严、华、金、魏、陶、姜、戚、谢、邹、喻、柏、水、窦、章、云 苏、潘、葛、奚、范、彭、郎、鲁、韦、昌、马、苗、凤、花、方、俞、任、袁、柳、酆、鲍、史、唐、费、廉、岑、薛、雷、贺、倪、汤、滕、殷、罗、毕、郝、邬、安、常、乐、于、时、傅、皮、卞、齐、康、伍、余、元、卜、顾、孟、平、黄、和、穆、萧、尹、姚、邵、湛、汪、祁、毛、禹、狄、米、贝、明、臧、计、伏、成、戴、谈、宋、茅、庞、熊、纪、舒、屈、项、祝、董、梁、杜、阮、蓝、闵、席、季、麻、强、贾、路、娄、危、江、童、颜、郭、梅、盛、林、刁、钟、徐、邱、骆、高、夏、蔡、田、樊、胡、凌、霍、虞、万、支、柯、昝、管、卢、莫、柯、房、裘、缪、干、解、应、宗、丁、宣、贲、邓、郁、单、杭、洪、包、诸、左、石、崔、吉、钮、龚、程、嵇、邢、滑、裴、陆、荣、翁、荀、羊、于、惠、甄、曲、家、封、芮、羿、储、靳、汲、邴、糜、松、井、段、富、巫、乌、焦、巴、弓、牧、隗、山、谷、车、侯、宓、蓬、全、郗、班、仰、秋、仲、伊、宫、宁、仇、栾、暴、甘、钭、历、戎、祖、武、符、刘、景、詹、束、龙、叶、幸、司、韶、郜、黎、蓟、溥、印、宿、白、怀、蒲、邰、从、鄂、索、咸、籍、赖、卓、蔺、屠、蒙、池、乔、阳、郁、胥、能、苍、双、闻、莘、党、翟、谭、贡、劳、逄、姬、申、扶、堵、冉、宰、郦、雍、却、璩、桑、桂、濮、牛、寿、通、边、扈、燕、冀、浦、尚、农、温、别、庄、晏、柴、瞿、阎、充、慕、连、茹、习、宦、艾、鱼、容、向、古、易、慎、戈、廖、庾、终、暨、居、衡、步、都、耿、满、弘、匡、国、文、寇、广、禄、阙、东、欧、殳、沃、利、蔚、越、夔、隆、师、巩、厍、聂、晁、勾、敖、融、冷、訾、辛、阚、那、简、饶、空、曾、毋、沙、乜、养、鞠、须、丰、巢、关、蒯、相、查、后、荆、红、游、竺、权、逮、盍、益、桓、公、万俟、司马、上官、欧阳、夏侯、诸葛、闻人、东方、赫连、皇甫、尉迟、公羊、澹台、公冶、宗政、濮阳、淳于、单于、太叔、申屠、公孙、仲孙、轩辕、令狐、徐离、宇文、长孙、慕容、司徒、司空"
名 ="梅、阳、林、妮、博、宝、冰、波、贝、才、超、初、成、程、晨、德、富、福、枫、梵、刚、国、桂、罡、华、红、宏、辉、恒、慧、河、鸿、惠、桦、骅、剑、俊、杰、健、嘉、静、洁、娇、纪、宽、苛、珂、灵、兰、良、玲、磊、明、玛、媚、娜、朋、秋、青、琪、勤、晴、容、睿、蓉、胜、烁、堂、唯、伟、威、韦、雯、苇、香、兴、霞、萱、裕、颖、严、勇、阅、彦、宇、韵、燕、艳、乐、雨、洋、志、忠、宗、震、豪、迪、鑫、鹏、俊、军、苋、锦、文、温、明、景、先、芹、聪、辉、德、雪、琳、铭、茗、民、锋、枫、凤、轩、本、山、强、松、杨、阳、白"
字符串.分割(姓,"、",姓)
字符串.分割(名,"、",名)
数组空间.大小(姓,姓大小)//436
数组空间.大小(名,名大小)//128
for(1)
n=辅助.随机数(0,435)
结果1=姓[n]
姓结果=姓结果&结果1
endfor
for(位数=0;位数<参数;位数++)
n=辅助.随机数(0,127)
结果2=名[n]
名结果=名结果&结果2
endfor
返回 (姓结果&名结果)
功能结束
功能 身份证生成()
//地址码(前六位数) +出生日期码(第七位至十四位)+顺序码(第十五位至十七位) +校验码(第十八位数)
//顺序码(第十五位至十七位) //对同年、同月、同日出生的人编定的顺序号,顺序码的奇数分配给男性,偶数分配给女性。
//校验码,如果某人的尾号是0-9,都不会出现X,但如果尾号是10,那么就得用X来代替,
//校验码的计算方法
//1、将前面的身份证号码17位数分别乘以不同的系数。从第一位到第十七位的系数分别为:7-9-10-5-8-4-2-1-6-3-7-9-10-5-8-4-2。
//2、将这17位数字和系数相乘的结果相加。
//3、用加出来和除以11,看余数是多少?
//4、余数只可能有0-1-2-3-4-5-6-7-8-9-10这11个数字。其分别对应的最后一位身份证的号码为1-0-X -9-8-7-6-5-4-3-2。
//5、通过上面得知如果余数是2,就会在身份证的第18位数字上出现的是 X 。如果余数是10,身份证的最后一位号码就是罗马数字 2 。
//例如:某男性的身份证号码为【53010219200508011x】, 我们看看这个身份证是不是合法的身份证。
//首先我们得出前17位的乘积和【(5*7)+(3*9)+(0*10)+(1*5)+(0*8)+(2*4)+(1*2)+(9*1)+(2*6)+(0*3)+(0*7)+(5*9)+(0*10)+(8*5)+(0*8)+(1*4)+(1*2)】是189,然后用189除以11得出的结果是189/11=17----2,也就是说其余数是2。最后通过对应规则就可以知道余数2对应的检验码是X。所以,可以判定这是一个正确的身份证号码。
var 地址码大小,结果1,地址码,生日码年,生日码月,生日码日,生日码,顺序码,前十七位,校验码
var 第一位,第二位,第三位,第四位,第五位,第六位,第七位,第八位,第九位,第十位,第十一位,第十二位,第十三位,第十四位,第十五位,第十六位,第十七位
地址码="110101,120101,130100,140100,150100,210100,220100,230100,310101,320102"
字符串.分割(地址码,",",地址码)
n=辅助.随机数(0,9)
地址码=地址码[n]
生日码年=辅助.随机数(1900,2000)
生日码月=辅助.随机数(1,12)
if(生日码月<10)
生日码月="0"&生日码月
endif
生日码日=辅助.随机数(1,26)
if(生日码日<10)
生日码日="0"&生日码日
endif
生日码=生日码年&生日码月&生日码日
顺序码=辅助.随机数(0,999)
if(顺序码<10)
顺序码="00"&顺序码
endif
if(顺序码>=10 && 顺序码<100)
顺序码="0"&顺序码
endif
前十七位=类型.转字符型(地址码)&类型.转字符型(生日码)&类型.转字符型(顺序码)
for(i=0;i<17;i++)
内容=字符串.截取(前十七位,i,i+1)
if(i+1==1)
第一位=内容*7
endif
if(i+1==2)
第二位=内容*9
endif
if(i+1==3)
第三位=内容*10
endif
if(i+1==4)
第四位=内容*5
endif
if(i+1==5)
第五位=内容*8
endif
if(i+1==6)
第六位=内容*4
endif
if(i+1==7)
第七位=内容*2
endif
if(i+1==8)
第八位=内容*1
endif
if(i+1==9)
第九位=内容*6
endif
if(i+1==10)
第十位=内容*3
endif
if(i+1==11)
第十一位=内容*7
endif
if(i+1==12)
第十二位=内容*9
endif
if(i+1==13)
第十三位=内容*10
endif
if(i+1==14)
第十四位=内容*5
endif
if(i+1==15)
第十五位=内容*8
endif
if(i+1==16)
第十六位=内容*4
endif
if(i+1==17)
第十七位=内容*2
endif
endfor
辅助.等待(100)
和=第一位+第二位+第三位+第四位+第五位+第六位+第七位+第八位+第九位+第十位+第十一位+第十二位+第十三位+第十四位+第十五位+第十六位+第十七位
余数=和%11
if(余数==0)
校验码=1
endif
if(余数==1)
校验码=0
endif
if(余数==2)
校验码="X"
endif
if(余数==3)
校验码=9
endif
if(余数==4)
校验码=8
endif
if(余数==5)
校验码=7
endif
if(余数==6)
校验码=6
endif
if(余数==7)
校验码=5
endif
if(余数==8)
校验码=4
endif
if(余数==9)
校验码=3
endif
if(余数==10)
校验码=2
endif
身份证号=前十七位&类型.转字符型(校验码)
返回 (身份证号)
功能结束
///////////////////////////////////////////////////////////////////////////////////////////////////
空间结束
//空间结束语句
视频教程请回复下载
更多视频请访问:www.yjsdwx.com
|
|