我一直在尝试使用CasperJS创建一个登录脚本来检查我的bing奖励积分,我正在查看调试输出,一切看起来都很好,只是它没有成功登录。 (所以我账户上的奖励没有显示)。我在chrome控制台中对此进行了测试,并避免使用casper.fill,因为它会刷新登录页面。登录信息是一个有效的测试帐户。
var system = require('system');
var utils = require('utils');
var casper = require('casper').create({
verbose: true,
logLevel: 'debug'
});
var binglink = "https://login.live.com/ppsecure/post.srf?wa=wsignin1.0&rpsnv=11&ct=1347289667&rver=6.0.5286.0&wp=MBI&wreply=https:%2F%2Fssl.bing.com%2Fsecure%2FPassport.aspx%3Frequrl%3Dhttps%253a%252f%252fssl.bing.com%252faccount%252frewards%253fru%253dhttp%25253a%25252f%25252fwww.bing.com%25252f&lc=1033&id=264960&bk=1347289670";
casper.start(binglink, function() {
casper.evaluate(function() {
document.querySelector('input[type="email"]').value = "genericemail@live.com";
document.querySelector('input[type="password"]').value = "genericpassword";
document.querySelector('input[type="submit"]').click();
});
});
casper.then( function(){
this.wait(2000);
})
casper.then( function(){
this.echo("Capturing Page");
this.capture('bing.live.png');
});
casper.run();
答案 0 :(得分:2)
我一直在做类似的事情,这就是我登录他们网站的方式。
var username = 'username@gmail.com', password = 'password';
var casper = require('casper').create({
pageSettings: {
userAgent: 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.10 (KHTML, like Gecko) Chrome/23.0.1262.0 Safari/537.10'
},
viewportSize: {
width: 1024,
height: 768
},
});
casper.start('http://www.bing.com/rewards/signup/signin', function goToLoginPage() {
this.click('#WLSignin');
});
casper.then(function fillLoginDetails() {
this.fill('form[name="f1"]', {
'login': username,
'passwd': password,
'KMSI': true
}, false);
});
casper.then(function clickButton() {
this.click('input[name="SI"]');
});
casper.run(function() {
this.exit();
});