2017-02-07 4 views
0

Даже на простом коде, CasperJS подвисает, когда представлены с большим числом итераций, например: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 цифры в длину. Что-нибудь еще, я бы получил первое сообщение «Загрузка ...», но затем скрипт зависает при обработке номера. Я оставил комп, работающий в течение нескольких часов, чтобы проверить, было ли это всего лишь временем обработки, но не сигарой.

Любая помощь будет оценена по достоинству!

ответ

0

Вы пытались избежать загрузки плагинов и изображений? Это было бы легко один:

var casper = require('casper').create({ 
     pageSettings: { 
      loadImages : false, 
      loadPlugins : false, 
     } 
    }); 

Другой вариант заключается в создании новых страниц и закрытия (очистки) их снова, как descriped here on github

+0

Да, это что-то о нем обработки количество ссылок перед началом процесса .. , – jakequade