用casperjs模拟登录,支持多个账户登录

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();
时间: 2024-10-08 20:47:51

用casperjs模拟登录,支持多个账户登录的相关文章

模拟web访问有登录且有验证码的登录后抓取数据

模拟web访问有登录且有验证码的登录后抓取数据 1 取验证码 1 在窗体上放一个picturebox (imgValidate)存放获取的验证码图片, 2 用浏览器的开发者工具firefox (f12) 分析出验证码的网址 private void GetValidateImage() { cookies = new CookieContainer(); string strUrl = "http://www.xxx.com/ValidateCodePicture.aspx?Key="

Servlet实战(一)---账户登录

Servlet学习入门的第一个例子 环境 MyEclipse10.0+Tomcat7.0+Postgresql9.1 效果                代码: LoginServlet.java <pre name="code" class="java">import javax.servlet.*; import javax.servlet.http.*; import java.io.*; import java.sql.*; /* * Servl

慎重管理SQL Server服务的登录(启动)账户和密码

今天是大年初三,先跟大家拜个年,祝大家新年快乐.今天处理了一个alwaysOn问题--辅助副本因为磁盘空间不足一直显示[未同步--可疑],在日志中可以看到数据库处于挂起状态,与主副本失去同步.原以为只需把辅助副本的磁盘做个清理,腾出一点空间,然后重启SQL Server服务就好了(重启让数据库从挂起状态进入到联机状态,然后让alwaysOn重新开始同步).但,重启失败!!!在操作系统日志中看到SQL Server启动失败的原因是:(启动账户的)用户名和密码错误!!! 当初做alwaysOn的时候

C#_自动化测试1_模拟post,get_12306火车票网站自动登录工具

还记得2011年春运,12306火车票预订网站经常崩溃无法登录吗. 今天我们就开发一个12306网站自动登录软件. 帮助您轻松订票 通过前两篇博客Fiddler教程和HTTP协议详解,我们了解了Web的原理. Web的原理就是,浏览器发送一个Request给Web服务器,Web服务器处理完这个请求之后发送一个HTTP Response给浏览器. 如果我们用自己写的程序来发送Request给Web服务器,然后再捕获Web服务器发回来的Response. 检查它与期望值值是否一致. 这不就是Web自

监控账户登录

对于有很大权限的账户,比如域管理员账户我们希望能够实时监控他的登录情况.如果账户被他人盗取,我们在第一时间就判断是正常使用还是他人盗取后使用的. 这里介绍一种不借助第三方工具就能简单实现的邮件监控账户登录的方法. 首先,打开安全日志,找到用户登录的日志.在Windows 2012 R2中记录的日志是4626.其中记录了用户名,登录的客户端. 接下去就要新建计划任务了. 在触发器这里选择发生事件时,并选择自定义然后新建事件筛选器.然后再XML选项卡中勾选,手动编辑查询.然后贴入以下代码: <Que

账户登录简版

static void Main(string[] args) { const string UN = "admin"; const string PW = "123456"; string usename, password; int i=0; while (i <=3) { Console .WriteLine ("请输入用户名:"); usename=Console .ReadLine (); Console .WriteLine (

Linux登录自动切换root账户与历史命令优化

1:当我们Linux系统优化完成,会使用oldboy用户远程连接CRT登录,每次连接都需要使用sudo su - 或者su - 输入密码登录,请问如何在CRT连接的时候自动的切换到root账户,(提示:CRT连接的用户为oldboy,所以只能针对oldboy有此功能) 应用场景:当我们使用oldboy用户远程连接系统的时候总是需要使用sudo或者su命令切换到root账户,这样极大影响了我们的工作效率,我们可以通过修改oldboy用户家目录下.bash_profile配置文件,使其在登录是自动运

12306抢票客户端(1)账户登录Post表单

每次回家坐火车都需要使用软件来抢票,而前段时间爆出了"12306网站密码大规模泄露"的事件.泄露的罪魁祸首就是那些第三方抢票软件!因此,自己写一个抢票软件来抢票,无毒无害,效率更高. 1. 破解登录表单 12306在登录账户时,使用了验证码.加载动态js.查找抢票软件关键词.加密表单内容的反抢票软件措施,因此需要搞清登录表单的每一个值是如何得到的. 登录时,需要向 https://kyfw.12306.cn/otn/login/loginAysnSuggest 这个url发送一个POS

登录oracle数据库提示账户锁定解决方法

问题再现: 由于更改了oracle账户的密码,退出重新连接oracle出现了账户被锁定的情况. 请了百度君出来卸载一下,问题已解决. 在cmd下:sqlplus /nolog 然后:以dba身份登录:conn /as sysdba 解锁: alter user testuser(需要解锁的账户)account unlock; 搞定! 在这里,可能是我修改数据库密码后,没有关闭连接数据库的程序,直接导致了连接的密码错误次数多余10次以上造成的. 登录oracle数据库提示账户锁定解决方法