我使用jsoup
通过以下功能阅读网页。
public Document getDocuement(String url){
Document doc = null;
try {
doc = Jsoup.connect(url).timeout(20*1000).userAgent("Mozilla").get();
} catch (Exception e) {
return null;
}
return doc;
}
但每当我尝试阅读包含javascript
生成内容的网页时,jsoup
都不会读取这些内容。即,页面的实际内容是通过一些javascript
调用加载的。因此它不存在于该链接的页面源中。例如,此博客:http://blog.rapporter.net/search/label/r。有没有办法在使用Jsoup
解析页面时获取javascript生成的内容?如果没有请建议任何可以解决这个问题的java html解析器..
答案 0 :(得分:3)
您无法使用Jsoup 执行此操作。 Jsoup解析HTML,等待AJAX请求或JavaScript内容一般你需要一个可以执行这个JavaScript的浏览器,以便从中获取一些输出。 JavaScript逻辑可能很复杂,因此执行JavaScript和加载内容并不是一件容易的事情(只需看看复杂的浏览器,JS和DOM是多么复杂)。