使用mechanize和python跟踪javascript链接
我正在做一些网页抓取,项目几乎完成了,除了我需要点击一个javascript链接,我无法解决如何使用Python和mechanize 在其中一个页面上,会出现一个javascript链接列表,我想依次跟踪它们,收集一些数据,然后重复。我知道mechanize不适用于javascript,但有人知道解决方法吗?下面是我用来隔离链接的代码:使用mechanize和python跟踪javascript链接,javascript,python,web-scraping,mechanize,Javascript,Python,Web Scraping,Mechanize,我正在做一些网页抓取,项目几乎完成了,除了我需要点击一个javascript链接,我无法解决如何使用Python和mechanize 在其中一个页面上,会出现一个javascript链接列表,我想依次跟踪它们,收集一些数据,然后重复。我知道mechanize不适用于javascript,但有人知道解决方法吗?下面是我用来隔离链接的代码: for Auth in iterAuths: Auth = str(Auth.contents[0]).strip() br.find_li
for Auth in iterAuths:
Auth = str(Auth.contents[0]).strip()
br.find_link(text=Auth)
现在如果我执行br.follow\u link(text=Auth)
,我会得到一个错误urlib2.urleror:
如果我执行打印br。单击链接(text=Auth'),它将作为请求javascript:SendThePage('5660')
我只需要通过javascript链接。有人能帮我吗?当我需要做类似的事情时,我查看了我试图遵循的链接 其中一些是使用javascript生成的静态链接。它们是可预测的/一致的,因此我可以提前手动生成一个列表 其他的只是用参数构建的URL。这些也可以事先进行分析,生成python端,并作为请求传递,而不是“单击此链接” 如果需要实际执行javascript,可以运行PyV8+Mechanize混合。我一直在玩这个,它看起来很酷。PyV8将Python与V8 Javascript引擎连接起来,允许您创建JS环境并执行任意代码。它在两种语言之间来回转换做得很好
我没有任何示例代码,但这3个解决方案中的一个将适用于您:)祝您好运你有任何资源安装PYV8,我有一些麻烦。@在这一点上一直困惑,我只考虑使用幻灯片后端使用硒,这样你就可以无头运行。这个工作流程已经发展到现在,而mechanize已经死了。