您的位置:首页 > 编程语言 > ASP

casperjs模拟登录-jd无验证码签到

2017-02-23 16:05 399 查看
var casper = require('casper').create({
clientScripts:[
'E:/jquery.js'
]
});

var accountLogin = '.login-form .login-tab-r a';
var hidestr = "hide",has_verify = false;

casper.start('http://vip.jd.com/');

casper.then(function(){
this.wait(5000,function() {
this.echo("I've waited for 5 seconds again");
});
});

//可删除
casper.then(function() {
this.capture("vipjdcom1.jpeg");
});

casper.then(function(){
if (this.exists("#ttbar-login")) {
this.click("#shortcut-2014 .w .fr #ttbar-login a");
}else{
this.echo("not exists");
}
});

casper.then(function(){
this.wait(10000,function() {
this.echo("I've waited for 10 seconds again");
});
});

//可删除
casper.then(function() {
this.capture("accountloginui1.jpeg");
});

casper.then(function(){
if (this.exists(accountLogin)) {
this.echo("exists");
this.click("#content .login-wrap .w .login-form .login-tab-r a");
}else{
this.echo("not exists");
}
});

casper.then(function(){
this.wait(2000,function() {
this.echo("I've waited for 2 seconds again");
});
});

//可删除
casper.then(function() {
this.capture("accountloginui2.jpeg");
});

casper.then(function(){
if (this.exists("#o-authcode")) {
this.evaluate(function(){
var oauthcode = document.getElementById("o-authcode");
var classValue = oauthcode.className;
if (classValue !=null) {
if (classValue.indexOf(hidestr) > 0) {
has_verify = false;
}else{
this.captureSelector("./jdcode.jpeg","#JD_Verification1");
has_verify = true;
}
}
});
}
});

casper.then(function(){
this.wait(2000,function() {
this.echo("I've waited for 2 seconds again");
});
});

casper.then(function(){
if (has_verify) {
this.echo("需要输入验证码");
}else{
this.fill('form[id="formlogin"]',{
'loginname':'xxx',
'nloginpwd':'xxx',

},true);
}
});

casper.then(function(){
this.click(".login-btn a");
this.echo("登录中...");
});

casper.then(function() {
this.wait(10000,function() {
this.echo("I've waited for 10 seconds again");
});
});

casper.then(function() {
this.echo('new location is ' + this.getCurrentUrl());
this.capture("vipjdcom2.jpeg");
});

casper.then(function() {
this.click(".side-shortcut #checkinBtn .icon-set");
});

casper.then(function() {
this.wait(2000,function() {
this.echo("I've waited for 2 seconds again");
});
});

casper.then(function() {
this.capture("vipjdcom3.jpeg");
});

casper.then(function() {
this.echo("签到成功");
});

casper.run();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  登录 模拟 casperjs