用casperjs模拟登录,支持多个账户登录
2017-05-09 18:29
134 查看
var casper = require('casper').create({ viewportSize:{ width:1920, height:1080 } }); var url1 = 'http://jifen.yuyid.com'; var users = [{'username':'150****656','password':'xxxxxx'},{username:'username',password:'xxxxx'}]; casper.start(); var autoSingin = function(value,key){ //打开首页 casper.thenOpen(url1,function(){ this.captureSelector('jifen.png','html'); this.wait(1000); //this.wait方法挡不住当前回调函数下面代码的执行,只能延时下一步要执行的代码,比如下面这个casper.then this.click('div.go-login'); }) //填充表单并登录 casper.then(function(){ //等待1s后执行这个回调 this.captureSelector('alert.jpg','html'); this.fill("form#login_form",value,false) this.captureSelector('filled.jpg','html'); this.click('a.login-btn'); this.wait(3000) }) //点击签到打开窗口 casper.then(function(){ this.captureSelector('logined.jpg','html'); this.click('#sign-btn'); this.wait(1000); }) //执行签到 casper.then(function(){ this.captureSelector('click-sigin.png','html'); this.click('.sign-btn-a'); this.wait(1000); }) //签到成功 casper.then(function(){ this.capture('sigin-success-'+key+'.png'); this.click('.user>a') }) } users.forEach(function(value,key){ autoSingin(value,key) }) casper.run();
备注:fill方法可以用json键值对的形式填充表单数据,如果是fillSelectors方法,则必须是dom-value的形式,比如:
//'#TANGRAM__PSP_3__userName'为input的id this.fillSelectors('form#TANGRAM__PSP_3__form',{ '#TANGRAM__PSP_3__userName':'150****6728', '#TANGRAM__PSP_3__password':'keivn**168' },false);
相关文章推荐
- javaWeb不允许两个客户端同时使用一个账号登录系统(支持多个tomcat)
- casperjs配合phantomjs实现自动登录百度,模拟点击等等操作 - 怕虎在线www.ipahoo.com图文教程 - 怕虎在线
- C#模拟windows账户登录,并复制文件代码
- casperjs模拟登录-jd无验证码登录
- 让Windows Live Messenger支持多账户登录
- 多个账户模拟登录---c#异步模拟登录网站并采集网页
- 智能卡登录出错.提示你的账户不支持智能卡登录.
- asp.net web 应用站点支持域账户登录
- casperjs模拟登录-驾校登录
- 【C语言】模拟用户登录系统 以及演示多个字符从两端向中间靠拢
- 多个账户模拟登录---c#异步模拟登录网站并采集网页
- casperjs模拟登录-jd无验证码签到
- python模拟登录百度代码分享(获取百度贴吧等级)
- ubuntu kylin 14.04启用root账户登录
- delphi 模拟自动登录网页
- 腾讯微博模拟登录
- Windows 10家庭版也能共享打印机(中)解除Guest账户网络登录限制,实现局域网共享
- XGen XGsab苹果IOS神器一键新机改串清理超级全息备份支持IOS7-8-9-10全系模拟超IGV8
- Java网络爬虫(三)--如何判断自己的模拟登录是否成功
- python模拟登录及表单提交