我有一个 casperjs 代码,如下所示:
var links = [
{ url : "http://engadget.com/" , name : "eng" },
{url : "http://shoryuken.com/2013/02/01/help-save-super-arcade/",name: "shir"},
{url: "http://theverge.com/",name:"thever" }
];
var eng_done = false , shir_done=false, thever_done=false;
var casper = require('casper');
for(i=0;i<links.length;i++){
var url = links[i].url;
var name = links[i].name;
var instance_i = casper.create();
instance_i.start(url,function(){
console.log("Loading: "+ name);
name_done = true;
});
instance_i.run(function(){
exit(i);
});
}
function exit(idz){
console.log("Now exiting instance no => "+idz);
if(eng_done & shir_done & thever_done){
idz.exit();
}
}
正如您可以清楚地看到我正在启动 3 个 casperjs 实例并立即退出它们,问题是它没有正确退出实例,因为 exit(i) 总是卡在 3 上。我不知道我在这里做错了什么...(请,网址只是示例)。