12

Facebookのニュースフィードと同じように、無限スクロールを使用してデータを動的に取得する動的WebページからHtmlUnitを使用してデータをクロールしています。次の文を使用して、スクロール ダウン イベントをシミュレートしました。

webclient.setJavaScriptEnabled(true);
webclient.setAjaxController(new NicelyResynchronizingAjaxController());
ScriptResult sr=myHtmlPage.executeJavaScript("window.scrollBy(0,600)");
webclient.waitForBackgroundJavaScript(10000);
myHtmlPage=(HtmlPage)sr.getNewPage();

しかし、myHtmlPage は前のものと同じままのようです。つまり、新しいデータが myHtmlPage に追加されていないため、Web ページの最初のいくつかのデータしかクロールできません。ご協力いただきありがとうございます!

4

2 に答える 2

-1

ページのスクロール中にコンテンツがポストロードされるという同様の問題がありました。私はそれを使用して解決しました:

webClient.getCurrentWindow().setInnerHeight(Integer.MAX_VALUE);

于 2014-07-08T06:37:26.107 に答える