试图解析javascript隐藏的html

问题描述:

我创建了一个简单的java脚本,它使用Jsoup来解析一页数据。然而,网站创建者已经改变了页面,如果网页上有一定数量的数据,它会给你提供改进搜索的意见,或者,你可以点击一个链接,数据就会出现。我一直在试图找到一个解决方案,我的头发已经撕掉了,url不会改变,链接的href只是javacript:void(0);。有没有什么办法可以使用我的脚本获取包含数据的html?试图解析javascript隐藏的html

+0

您将需要执行Javascript。 – Vulcan

+0

我可以使用jsoup在我的代码中执行该操作吗?对不起,我没有任何处理这方面的经验,我不敢肯定google =/ – BrightEyed

+0

Jsoup不执行Javascript。您可能需要切换库。 –

使用firefox或chrome的开发者工具。当你点击链接时,可能会有一个ajax电话开火。在网络选项卡上,您可以看到javascript实际请求的网址以及结果的结构(propably json)。然后您可以直接访问该网址来加载剩下的结果。

或者类似的规定^^

尝试使用一些驱动网页浏览器如Selenium。这是我使用过的唯一一个,从不需要别的东西。我确定有不同的东西可以更好地适应你,你应该测试一些,或者不要。一旦你用selenium(或者你选择的任何web驱动程序)获得javascript元素,将它们解析成JSoup Elements。 这样你就不必完全改变库,但只需添加一个。

另外,有几种方法可以通过查看浏览器地址栏中的更改来解决javascript问题。