我想用 jsoup 抓取一个网站。该网站是动态,每秒左右更新一次。我很确定它使用了 jQuery,它更新了 HTML 中的一些
<span>
标签。我正在使用 jsoup,但动态区域是空白的。
jsoup 有什么特别的东西可以解决这个问题还是有限制?
编辑:我计划将其放入我网站上的 Java 小程序中。
听起来您希望 JSoup 表现得像一个支持 JavaScript 的浏览器。 恐怕这行不通。 JSoup 是一个可以执行 HTTP 请求,然后使用响应正文进行有用操作的工具。
这个“有用的东西”是从响应中的 (X)HTML 文本中提取信息。 如果您想在加载注入 JavaScript 的 HTML 页面(=动态网页)后获取后续 ajax 请求的内容,您需要自己对这些后续请求进行建模,并指示 JSoup 手动为您执行这些请求。
HTMLUnit是一个基于java的无窗口浏览器,支持javascript 我已经用于一些报废项目,并且效果很好,有时在大型操作中有点慢。 它还支持代理。 http://htmlunit.sourceforge.net/