2

私は数か月前から Web スクレイピングを行っていますが、常に JavaScript を使用してデータをロードするページでスタックします。
私は HTMLunit を使用してそのようなページである程度の成功を収めていますが、Htmlunit がこれらの異常な例外をスローし、最終的にページをロードしないことがあります。HTMLunit を使用するのは失敗と失敗の連続だったと言わざるを得ません。
それを達成するための具体的な方法はありますか??
しかし、私の側でも、HTMLunit について深く掘り下げていません。それで、あなたの提案は何でしょうか?? 私はHTMLunitを使い続ける必要がありますか、それともjavascript処理を実現するための他の良い方法(ライブラリ)はありますか??

記録のために、私は Java を主要言語として使用しています。

4

1 に答える 1

1

Htmlunit を使用して 2 ~ 3 年間 Web スクレイピングを行っています。読み込みの問題を処理するのに役立つ構成がいくつかあります。

webClient.setAjaxController(new NicelyResynchronizingAjaxController());
// Edit some js, prior to execution
webClient.setScriptPreProcessor(new JavascriptPreProcessor() { ... } );
// Avoid throwing errors on JS execution
webClient.setThrowExceptionOnScriptError(false);
// Avoid throwing errors because of wrong response codes
webClient.setThrowExceptionOnFailingStatusCode(false);
于 2013-06-06T17:44:03.890 に答える