在html中评估所有javascript以获得最终的html文档(java)



如何在所有javascript在网页上评估后获得'最终' html。例如,如果您查看一个简单的Google搜索https://www.google.com/#q=books的页面源代码,您所能看到的只是一堆javascript。但是如果你'inspect element',你可以看到javascript渲染的实际html。我想要这个

我试过混淆HtmlUnit和JSOUP,但我只是不知道如何得到最终的"渲染"html。也许我错过了一些javascript执行调用?

我已经尝试过HtmlUnit:

  final HtmlPage page = webClient.getPage(url);
  System.out.println(page.asXml());

和JSOUP:

  Document doc = Jsoup.connect(url).get();
  System.out.println(doc.toString());

但似乎都无法解决google.com搜索javascript。

编辑:这似乎可能只是谷歌的疯狂的javascript,我有困难评估。我能够生成dom/xml通过指向一个非常简单的html

<!DOCTYPE html>
<html>
<body>
<script type="text/javascript">
document.write("Welcome!!!");
</script>
</body>
</html>

好了…所以显然HtmlUnit工作得很好,除了不是在谷歌的url,如https://www.google.com/#q=books,但如果我改变url到https://google.com/search?hl=en&q=books这样的东西,然后它能够评估所有的javascript和产生一个有用的DOM。

最新更新