【发布时间】:2015-01-20 14:43:33
【问题描述】:
我正在尝试从不同的网站获取酒店评论。
对于简单的纯 HTML 网页(如 TripAdvisor),我使用了 JSoup 并且这样做了
Jsoup.connect("foo.html").get();
对于使用 Javascript 进行加载的页面(如 Expedia),我使用了 Selenium WebDriver 并做了类似的事情
driver.get("foo.html");
driver.manage().timeouts().pageLoadTimeout(10,TimeUnit.SECONDS)
他们很好,因为他们有链接,我可以使用这些链接来抓取并获得更多评论。
和
我面临的问题是从进行 AJAX 调用的页面下载时(例如 MakeMyTrip )。
在这里,我不知道如何将网页下载为酒店列表,该列表位于页面上,并在我们向下滚动时不断出现。
任何建议都会有很大帮助。
【问题讨论】:
-
你需要一个无头浏览器,而不是 jsoup。
-
正如我提到的,我将 JSoup 用于简单的网页。我要问的是如何在不更改其 URL 的情况下获取持续加载的页面(使用 ajax 调用)
标签: java ajax selenium webdriver web-crawler