贡献者: admin 来源:快手AAUTO专区 时间:2011-5-26 10:44 热度:2153
查看: 2153|回复: 0

[源码] 用快手实现自动登录的方法

[复制链接]
  1. 使用wb.doScript执行js脚本提交的方法

  2. import win;
  3. import win.ui;
  4. import win.ui.menu
  5. import win.ole
  6. /*DSG{{*/
  7. var winform = win.form(parent=...; min=1;bottom=249;scroll=1;right=349;text="AAuto Form";max=1 )
  8. winform.add(  )
  9. /*}}*/

  10. import web.form;

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

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

  17. //登录
  18. wb.getEle("username").value="登录用户名"
  19. wb.getEle("password").value="999999"  
  20. wb.doScript("FormSubmit()")


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

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

  25. import win;
  26. import win.ui;
  27. import win.ui.menu
  28. import win.ole
  29. /*DSG{{*/
  30. var winform = win.form(parent=...; min=1;bottom=249;scroll=1;right=349;text="AAuto Form";max=1 )
  31. winform.add(  )
  32. /*}}*/

  33. import web.form;

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

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

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

  44. ele.form.action = 'http://secure.verycd.com/signin?f=out'
  45. ele.form.submit()


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

  49. 自动post的方法

  50. import win;
  51. import win.ui;
  52. import win.ui.menu
  53. import win.ole
  54. /*DSG{{*/
  55. var winform = win.form(parent=...; min=1;bottom=249;scroll=1;right=349;text="AAuto Form";max=1 )
  56. winform.add(  )
  57. /*}}*/

  58. import web.form;

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

  61. //构建上传数据
  62. postData = string.fromto(
  63.     "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="
  64.     ,0
  65.     ,65001
  66.     )

  67. //自动提交
  68. wb.post("http://secure.verycd.com/signin?f=out"
  69.     ,postData )

  70. //显示窗口
  71. winform.show(true)

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


  75. 使用wb.getDoc().Script.函数(至少一个参数) 执行脚本提交

  76. import win;
  77. import win.ui;
  78. import win.ui.menu
  79. import win.ole
  80. /*DSG{{*/
  81. var winform = win.form(parent=...; min=1;bottom=249;scroll=1;right=349;text="AAuto Form";max=1 )
  82. winform.add(  )
  83. /*}}*/

  84. import web.form;

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

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

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

  94. //这样直接执行函数有返回值,必须至少传递一个参数,随便写一个也可以
  95. wb.getDoc().Script.FormSubmit(0)

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

  99. 用wb.eachAll查找节点,并使用ele.click()模拟点击提交.

  100. import win;
  101. import win.ui;
  102. import win.ui.menu
  103. import win.ole
  104. /*DSG{{*/
  105. var winform = win.form(parent=...; min=1;bottom=249;scroll=1;right=349;text="AAuto Form";max=1 )
  106. winform.add(  )
  107. /*}}*/

  108. import web.form;

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

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

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

  118. //遍历所有input节点
  119. for( i,ele in wb.eachAll("input") ){
  120.     if( ele.src == "http://game.verycd.com/hero/wp-content/themes/hero_v1/images/dl.gif" )  
  121.         ele.click();
  122. }

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

  126. 不用web窗体也可以自动提交

  127. import process;
  128. import inet.whttp
  129. whttp = inet.whttp();

  130. //构建上传数据
  131. postData = string.fromto(
  132.     "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="
  133.     ,0
  134.     ,65001
  135.     )

  136. str,errmsg = whttp.down("http://secure.verycd.com/signin?f=out" ,postData,"" );
  137. whttp.close();//释放资源
  138.    

  139. if(str){//如果提交成功则保存到指定文件
  140.     string.save("/post.html",str )
  141.     process.execute( "/post.html"  )
  142. }
  143. else{//否则输出错误信息
  144.     win.msgbox(errmsg)
  145. }
复制代码


回复

使用道具 举报


您需要登录后才可以回帖 登录 | 注册

本版积分规则

分享 and 收藏
人收藏
联系我们
400-400-4000
周一至周日9:30-16:30 仅收市话费
官方微博 官方微信 咨询热线
153-8740-1530
返回顶部