var casper = require('casper').create({ clientScripts:["jquery.js"], pageSettings:{ // userAgent: 'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0; .NET CLR 2.0.50727; SLCC2; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.3; .NET4.0C; Tablet PC 2.0; .NET4.0E)' userAgent:'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; InfoPath.3)' } }); var fs = require('fs'); var code; casper.start('http://www.jsjtxx.com/spage/Beginner-Login.html'); casper.then(function() { this.wait(5000,function() { this.echo("I've waited for 5 seconds again"); }); }); //截图登录页面 casper.then(function(){ if (this.exists("#ttt")) { this.capture("code.jpeg"); }; }); casper.then(function() { this.wait(30000,function() { this.echo("I've waited for 30 seconds again ,please input code"); }); }); //根据截图输入验证码到code.txt文件并读取 casper.then(function(){ if (fs.exists("code.jpeg") && fs.exists("code.txt")) { code = fs.read("code.txt"); } }); casper.then(function() { this.wait(5000,function() { this.echo("I've waited for 5 seconds again ,please input code"); }); }); casper.then(function(){ this.fill('form[id="fmLogin"]',{ 'deptId':'320300', 'loginId':'×××号', 'passwd':'密码', 'authCode':code },false); }); casper.then(function(){ this.click(".login_buton"); this.capture("login.jpeg"); }); 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("main.jpeg"); }); casper.then(function() { if (this.exists("#plan")) { if (this.exists("#studyForm1 .btn_iskt2 span")) { this.click("#studyForm1 .btn_iskt2 span"); this.echo("exists"); }else{ this.echo("not exists"); } }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("video.jpeg"); }); casper.run();
转载于:https://blog.51cto.com/suyanzhu/1900433