首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用python抓取javascript生成的html

使用python抓取javascript生成的html
EN

Stack Overflow用户
提问于 2010-01-28 00:20:22
回答 4查看 16.8K关注 0票数 18

我需要用python抓取一个网站。我使用urlib模块获得了源代码html,但我还需要收集一些由javascript函数(包含在html源代码中)生成的html代码。这个函数在网站中的作用是,当你按下一个按钮时,它会输出一些html代码。我如何用python代码“按下”这个按钮?scrapy能帮到我吗?我捕获了带有firebug的POST请求,但是当我试图在url上传递它时,我得到了一个403错误。有什么建议吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-03-11 19:49:34

在Python语言中,我认为Selenium 1.0是最好的选择。它是一个库,允许你从你选择的语言控制一个真正的web浏览器。

您需要在运行脚本的机器上安装有问题的web浏览器,但它看起来是以编程方式询问使用大量JavaScript的网站的最可靠方法。

票数 11
EN

Stack Overflow用户

发布于 2010-01-28 00:34:52

我以前也这样做过(在.NET中),基本上您必须托管一个浏览器,让它单击按钮,然后询问浏览器的DOM (文档对象模型)以获得生成的超文本标记语言。

这绝对是web应用程序转向Ajax/Javascript方法来生成HTML客户端的缺点之一。

票数 4
EN

Stack Overflow用户

发布于 2011-12-03 11:24:22

我使用webkit,它是Chrome和Safari背后的浏览器渲染器。这里有Python bindings to webkit through Qt。这是一个完整的example to execute JavaScript and extract the final HTML

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2148493

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档