即使在一个简单的代码上,CasperJS似乎在呈现一个大的迭代次数时会挂起,例如:
function urlCheck(url) {
// Thing to do with url
}
casper.start('https://www.exampleAPI.com', function() {
console.log('Booted up first page.');
});
casper.then(function() {
for (var i = 0; i < 5000000; i++) {
urlCheck('https://www.exampleAPI.com/api/id=' + i)
};
});
casper.run();
对于第一千个内的任何东西似乎都没问题 - 即4位数长。除此之外,我会得到第一个“启动......”#39;消息,但然后脚本挂起处理数字。我已经跑了几个小时来测试它是否只是一个处理时间,但没有雪茄。
任何帮助都会受到超级赞赏!
答案 0 :(得分:0)
您是否尝试过避免加载插件和图片?那将是一件容易的事:
var casper = require('casper').create({
pageSettings: {
loadImages : false,
loadPlugins : false,
}
});
另一种选择是创建新页面并再次关闭(清理)它们,如描述here on github