原帖地址:http://www./thread-1647-1-1.html
使用ele.form.submit提交的方法 import win.ui; import web.form; /*DSG{{*/ var winform = win.form(parent=...; min=1;bottom=249;scroll=1;right=349;text="AAuto Form";max=1 ) winform.add( ) /*}}*/ //创建web窗体 var wb = web.form( winform ); //打开目标网站 wb.go("http://secure./3rdServices/50hero") winform.show(true) wb.wait(""); //登录 wb.getEle("username").value="登录用户名" ele = wb.getEle("password") ele.value="999999" ele.form.action = 'http://secure./signin?f=out' ele.form.submit() //进入消息循环 win.loopMessage(); return wb,winform; 使用wb.doScript执行js脚本提交的方法 import win.ui; import web.form; /*DSG{{*/ var winform = win.form(parent=...; min=1;bottom=249;scroll=1;right=349;text="AAuto Form";max=1 ) winform.add( ) /*}}*/ //创建web窗体 var wb = web.form( winform ); //打开目标网站 wb.go("http://secure./3rdServices/50hero") winform.show(true) wb.wait(""); //登录 wb.getEle("username").value="登录用户名" wb.getEle("password").value="999999" wb.doScript("FormSubmit()") //进入消息循环 win.loopMessage(); return wb,winform; 使用wb.Script.函数(至少一个参数) 执行脚本提交 import win.ui; import web.form; /*DSG{{*/ var winform = win.form(parent=...; min=1;bottom=249;scroll=1;right=349;text="AAuto Form";max=1 ) winform.add( ) /*}}*/ //创建web窗体 var wb = web.form( winform ); //打开目标网站 wb.go("http://secure./3rdServices/50hero") winform.show(true) wb.wait(""); //登录 wb.getEle("username").value="登录用户名" wb.getEle("password").value="999999" /* 执行js函数必须要有实参,不需要参数的函数可以随便写一个也可以, 这种直接调用js函数的方法能取到js函数的返回值,而wb.doScript()是不行的。 如果不写参数,返回的是函数对象本身,而不是调用函数。 */ wb.script.FormSubmit(0) //进入消息循环 win.loopMessage(); return wb,winform 用wb.eachAll()查找节点,并使用ele.click()模拟点击提交. import win.ui; import web.form; /*DSG{{*/ var winform = win.form(parent=...; min=1;bottom=249;scroll=1;right=349;text="AAuto Form";max=1 ) winform.add( ) /*}}*/ //创建web窗体 var wb = web.form( winform ); //打开目标网站 wb.go("http://secure./3rdServices/50hero") winform.show(true) wb.wait(""); //登录 wb.getEle("username").value="登录用户名" wb.getEle("password").value="999999" //遍历所有input节点 for( i,ele in wb.eachAll("input") ){ if( ele.src == "http://game./hero/wp-content/themes/hero_v1/images/dl.gif" ) ele.click(); } //进入消息循环 win.loopMessage(); return wb,winform; 用wb.queryEles()查找节点执行click()方法提交 该函数用法参考帖子:http://www./thread-2490-1-1.html import win.ui; /*DSG{{*/ var winform = win.form(parent=...; min=1;bottom=249;scroll=1;right=349;text="AAuto Form";max=1 ) winform.add( ) /*}}*/ import web.form; //创建web窗体 var wb = web.form( winform ); //打开目标网站 wb.go("http://secure./3rdServices/50hero") winform.show(true) wb.wait(""); //登录 wb.getEle("username").value="登录用户名" wb.getEle("password").value="999999" wb.queryEles ( src = "dl.gif"; tagName = "input" ).click() //进入消息循环 win.loopMessage(); return winform,wb; 使用wb窗体自动post提交 import win.ui; import web.form; /*DSG{{*/ var winform = win.form(parent=...; min=1;bottom=249;scroll=1;right=349;text="AAuto Form";max=1 ) winform.add( ) /*}}*/ //创建web窗体 var wb = web.form( winform ); //构建上传数据 postData = string.fromto( "ru=http%3A%2F%2Fsecure.%2F3rdServices%2F50hero&login_submit=%E7%99%BB%E5%BD%95&username=登录用户名&password=999999&x=33&y=15&_REFERER=" ,0 ,65001 ) //自动提交 wb.post("http://secure./signin?f=out" ,postData ) //显示窗口 winform.show(true) //进入消息循环 win.loopMessage(); return wb,winform; 不使用web窗体自动post提交 import process; import inet.whttp whttp = inet.whttp(); //构建上传数据 postData = string.fromto( "ru=http%3A%2F%2Fsecure.%2F3rdServices%2F50hero&login_submit=%E7%99%BB%E5%BD%95&username=登录用户名&password=999999&x=33&y=15&_REFERER=" ,0 ,65001 ) str,errmsg = whttp.post("http://secure./signin?f=out" ,postData ); whttp.close();//释放资源 if(str){//如果提交成功则保存到指定文件 string.save("/post.html",str ) process.execute( "/post.html" ) } else{//否则输出错误信息 win.msgbox(errmsg) } |
|
来自: 新用户01684162 > 《待分类》