0
このコードは、同じサイトを千ページのリストからループでダウンロードし続けます。その周りに方法を見つけることができませんでした。私はそれがスプリットの問題かもしれないと思った。多くのサイトをダウンロードしているPhantomJSが、最初の数回のダウンロード後に同じサイトをコピーし始めます。
var fs = require('fs');
var pageContent = fs.read('list.txt');
var arrdata = pageContent.split(/[\n]/);
var system = require('system');
var page = require('webpage').create();
var args = system.args;
var imagelink;
var content = " ";
function handle_page(i){
var imageLink = arrdata[i];
page.open(imageLink, function(){
fs.write("file"+i+".txt", page.content, 'w');
handle_page(i+1);
});
}
handle_page(0);
このコードをとった[the answer](http://stackoverflow.com/a/31422918/1816580)のような停止条件がないため、最後のURLを "開く"もう一度。これは私の推測です。どのページが誤動作し始めますか? –
4番目のURLに間違いがあります。停止条件を追加しても結果には影響しません。 – bon
どのPhantomJSバージョンを使用していますか? 'onConsoleMessage'、' onError'、 'onResourceError'、' onResourceTimeout'イベント([Example](https://gist.github.com/artjomb/4cf43d16ce50d8674fdf#file-1_phantomerrors-js))に登録してください。多分エラーがあるかもしれません。 PhantomJS 2.xはいくつかのエラーを隠すことが知られているので、PhantomJS 1.9.8も試してみるべきです。 –