2012-08-25 6 views
8

Ich crawle Daten mit HtmlUnit von einer dynamischen Webseite, die unendlich scrollt, um Daten dynamisch zu holen, genau wie facebooks Newsfeed. Früher habe ich den folgenden Satz das Scrollen nach unten Ereignis zu simulieren:crawl dynamische Webseite mit htmlunit

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

Aber es scheint myHtmlPage das gleiche mit dem vorherigen bleibt, das heißt, werden neue Daten nicht in myHtmlPage angehängt, als Ergebnis kann ich nur kriechen die ersten wenige Daten auf der Webseite. Danke für Ihre Hilfe!

+0

Haben Sie um einen Weg gefunden? –

+0

Irgendwelche Lösungen ?? –

+0

Auf der Suche nach Lösungen auch. Irgendwelche Ergebnisse? – lummycoder

Antwort

0

Ich suchte die gleiche Sache. Ich konnte nur feststellen, dass es kein Scroll Event ist (90% sicher). Es gibt link auf JS, die verantwortlich für das Laden der Seite ist und könnte Ihnen vielleicht helfen.

0

Ich hatte ähnliches Problem, wo der Inhalt während des Blätterns der Seite nachgeladen wurde. Ich löste es mit:

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

+1

hat nicht für mich funktioniert –