尝试通过casperJS start方法打开随机页面,但是有些页面正在正确加载而其中一些页面没有正确加载,因此在这种情况下它不会退出casperjs。 它被卡在控制台中,然后需要使用CTR + C手动退出控制台。
casper.start("some url", function() {
if(this.status().currentHTTPStatus == 200) {
casper.echo("page is loading");
} else {
casper.echo("page is in error ");
this.exit();
}
});
答案 0 :(得分:2)
使用全局stepTimeout选项将其换行。
示例代码:
var casper = require('casper').create({
stepTimeout: 10000 //10s
})
casper.start()
casper.then(funtion(){
casper.open(url)
})
casper.run()
答案 1 :(得分:0)
请尝试bypass()
忽略下一个然后。
casper.start("some url", function() {
if(this.status().currentHTTPStatus == 200) {
casper.echo("page is loading");
} else {
casper.echo("page is in error ");
this.bypass(2); // Will not execute the then functions.
}
}).then(function() {
// The 1st then function.
}).then(function() {
// The 2nd then function.
})
casper.run(function() {
this.echo('Something');
this.exit(); // <--- Here.
});