Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/381.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
试图解析javascript隐藏的html_Java_Javascript_Html_Jsoup - Fatal编程技术网

试图解析javascript隐藏的html

试图解析javascript隐藏的html,java,javascript,html,jsoup,Java,Javascript,Html,Jsoup,我创建了一个简单的java脚本,它使用Jsoup解析一页数据。然而,网站创建者已经改变了页面,以至于如果页面上有一定数量的数据,它会给你提供改进搜索的意见,或者,你可以点击一个链接,数据就会出现。我一直在努力寻找解决方案,url没有改变,链接的href只是javascript:void(0)。有没有什么方法可以通过我的脚本获取包含数据的html?使用firefox或chrome的开发工具。当您单击链接时,可能会触发ajax调用。在网络选项卡上,您可以看到javascript实际请求的url以及结

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

使用firefox或chrome的开发工具。当您单击链接时,可能会触发ajax调用。在网络选项卡上,您可以看到javascript实际请求的url以及结果的结构(可能是json)。然后,您可以直接访问该url以加载其余结果


或者类似的东西^^

使用firefox或chrome的开发工具。当您单击链接时,可能会触发ajax调用。在网络选项卡上,您可以看到javascript实际请求的url以及结果的结构(可能是json)。然后,您可以直接访问该url以加载其余结果


或者类似的东西^ ^

尝试使用一些能驱动web浏览器的东西,比如。这是我唯一用过的,我不需要其他东西。我相信有不同的可能更适合你,你应该测试一些,或者不。。使用selenium(或您选择的任何web驱动程序)获得javascript元素后,将它们解析为JSoup元素。 这样,您就不必完全更改LIB,只需添加一个


此外,您还可以通过查看浏览器地址栏中的更改来解决javascript问题。

尝试使用能够驱动web浏览器的东西,如。这是我唯一用过的,我不需要其他东西。我相信有不同的可能更适合你,你应该测试一些,或者不。。使用selenium(或您选择的任何web驱动程序)获得javascript元素后,将它们解析为JSoup元素。 这样,您就不必完全更改LIB,只需添加一个


此外,您还可以通过查看浏览器地址栏中的更改来处理javascript。

您需要执行javascript。我可以在代码中使用jsoup来执行吗?很抱歉,我没有处理这个问题的经验,我不确定google=/Jsoup不执行Javascript。您可能需要切换库。这不是一个解决方案,而是一个解决方法,您可以使用浏览器浏览页面,检查页面并了解javascript的功能,也许您可以绕过它,而不必执行javascript。如果不是的话,你将不得不像Terry Li提到的那样切换库。你将需要执行Javascript。我可以在我的代码中使用jsoup来执行吗?很抱歉,我没有处理这个问题的经验,我不确定google=/Jsoup不执行Javascript。您可能需要切换库。这不是一个解决方案,而是一个解决方法,您可以使用浏览器浏览页面,检查页面并了解javascript的功能,也许您可以绕过它,而不必执行javascript。如果不是这样,你就必须像特里·李提到的那样切换lib。