搜索
aardio官方社区 门户 查看主题

web自动登录方法汇总(转自老大指导)

发布者: qqmmcc | 发布时间: 2011-4-30 20:52| 查看数: 50487| 评论数: 66|帖子模式


使用ele.form.submit提交的方法

import win.ui;
import web.form;

/*DSG{{*/
var winform = win.form(parent=...; min=1;bottom=249;scroll=1;right=349;text="aardio Form";max=1 )
winform.add(  )
/*}}*/

//创建web窗体
var wb = web.form( winform );

//打开目标网站
wb.go("http://secure.verycd.com/3rdServices/50hero")
winform.show(
true)
wb.wait(
"");

//登录
wb.getEle("username").value="登录用户名"
ele = wb.getEle(
"password")
ele.value=
"999999"  

ele.form.action =
'http://secure.verycd.com/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="aardio Form";max=1 )
winform.add(  )
/*}}*/

//创建web窗体
var wb = web.form( winform );

//打开目标网站
wb.go("http://secure.verycd.com/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="aardio Form";max=1 )
winform.add(  )
/*}}*/

//创建web窗体
var wb = web.form( winform );

//打开目标网站
wb.go("http://secure.verycd.com/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="aardio Form";max=1 )
winform.add(  )
/*}}*/

//创建web窗体
var wb = web.form( winform );

//打开目标网站
wb.go("http://secure.verycd.com/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.verycd.com/hero/wp-content/themes/hero_v1/images/dl.gif" )  
        ele.click();
}

//进入消息循环
win.loopMessage();
return wb,winform;

用wb.queryEles()查找节点执行click()方法提交

该函数用法参考帖子:http://bbs.aardio.com/thread-2490-1-1.html

import win.ui;  
/*DSG{{*/
var winform = win.form(parent=...; min=1;bottom=249;scroll=1;right=349;text="aardio Form";max=1 )
winform.add(  )
/*}}*/

import web.form;

//创建web窗体
var wb = web.form( winform );

//打开目标网站
wb.go("http://secure.verycd.com/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="aardio Form";max=1 )
winform.add(  )
/*}}*/

//创建web窗体
var wb = web.form( winform );

//构建上传数据
postData = string.fromto(
   
"ru=http%3A%2F%2Fsecure.verycd.com%2F3rdServices%2F50hero&login_submit=%E7%99%BB%E5%BD%95&username=登录用户名&password=999999&x=33&y=15&_REFERER="
    ,0
    ,65001
    )

//自动提交
wb.post("http://secure.verycd.com/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.verycd.com%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.verycd.com/signin?f=out" ,postData );
whttp.close();
//释放资源
   
if(str){//如果提交成功则保存到指定文件
    string.save("/post.html",str )
    process.
execute( "/post.html"  )
}
else{//否则输出错误信息
    win.msgbox(errmsg)
}

评分

参与人数 4银币 +85 收起 理由
sandorn + 5 很给力!
dasan + 20 很给力!
icykiss + 30 很给力!
wfassg + 30 赞一个!

查看全部评分

最新评论

carl 发表于 2011-4-30 21:18:48

这种形式的总结要大力支持

这种形式的总结要大力支持
低调点 发表于 2011-5-1 09:19:46

wb.document.getElementById("J_StaticForm").submit() 和ele.form.submit差不多.

wb.document.getElementById("J_StaticForm").submit()

和ele.form.submit差不多.
o00viw 发表于 2011-5-1 13:27:02

这个值得收藏,继续深入学习下。

这个值得收藏,继续深入学习下。
jsniu 发表于 2011-5-1 13:36:51

好帖!收藏学习,必须的。

好帖!收藏学习,必须的。
sj798 发表于 2011-5-2 06:06:18

收藏了,以后有用的着的时候

收藏了,以后有用的着的时候
greenbud 发表于 2011-5-4 10:36:09

收藏ing{:3_46:}

收藏ing
freemanol 发表于 2011-5-5 08:56:14

值得收藏,深入学习

值得收藏,深入学习
set555 发表于 2011-5-5 13:08:47

先收藏了 谢谢!

先收藏了 谢谢!
cissy 发表于 2011-5-16 17:34:52

呵呵 好的东西就是要收藏的

呵呵 好的东西就是要收藏的
太子 发表于 2011-5-16 17:47:42

收藏

收藏
fantasynew 发表于 2011-5-24 19:54:37

感谢Q版的整理,很有用

感谢Q版的整理,很有用
zhanyong 发表于 2011-5-26 09:44:40

谢谢版主的支持。。。

谢谢版主的支持。。。
刘旭钱 发表于 2011-7-14 10:53:04

{:3_63:}收藏,继续深入学习{:3_60:}

收藏,继续深入学习
glod123 发表于 2011-7-18 09:05:24

这个实用,强大啊!

这个实用,强大啊!
海飘飘 发表于 2011-7-22 10:37:43

有一特例登录方式,调用页面JS,改写成AAu语句来实现 网页JS代码如下[code]