Python请求:发布javascript命令

问题描述 投票:0回答:2

所以,我正在尝试获取网站的内容,但只有当我点击“图表”链接时才显示此内容,这是一个像这样的javascript命令:

javascript:__doPostBack('fcc1$dgrC$ctl02$ctl00',''

来自这样的元素:

<a href="javascript:__doPostBack(&#39;fcc1$dgrC$ctl02$ctl00&#39;,&#39;&#39;)">Chart</a>

这是网站:

enter image description here

这就是当你点击'Chart'时会发生的事情:

enter image description here

您可以看到链接没有更改,因此获取图表代码的唯一方法是以某种方式发送该javascript命令

如何查找所有图表链接?如何在图表链接上进行“虚拟点击”?之后,如何获得新的HTML?

我真的很感谢你的帮助!

javascript python python-3.x web-scraping python-requests
2个回答
0
投票

doPostBack只是设置__EVENTTARGET和__EVENTARGUMENT表单字段并提交表单。这些只是引用BTW。


0
投票

如果这些链接确实被javascript侦听器“点击”,您可能无法找到要点击的真实链接。

相反,您可以使用工具在python中模拟Web浏览器,并在该链接上“单击”以转到下一页。我用的最好的是机械汤:https://mechanicalsoup.readthedocs.io/en/stable/introduction.html

© www.soinside.com 2019 - 2024. All rights reserved.