【问题标题】:crawl dynamic web page using htmlunit使用 htmlunit 抓取动态网页
【发布时间】:2012-08-20 14:53:39
【问题描述】:

我正在使用 HtmlUnit 从动态网页中抓取数据,该网页使用无限滚动来动态获取数据,就像 facebook 的新闻提要一样。我用下面这句话来模拟向下滚动事件:

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

但是myHtmlPage似乎和之前的一样,即myHtmlPage中没有追加新数据,因此我只能抓取网页上的前几个数据。感谢您的帮助!

【问题讨论】:

  • 你找到解决办法了吗?
  • 也在寻找解决方案。有结果吗?

标签: javascript ajax web-crawler htmlunit infinite-scroll


【解决方案1】:

我遇到了类似的问题,即在页面滚动期间后加载内容。我解决了它:

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

【讨论】:

    【解决方案2】:

    我正在寻找同样的东西。我只能发现它不是滚动事件(90% 肯定)。 JS 上有link,它是加载页面的责任,也许可以帮助你。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多