Python爬虫。解析并执行ajax

时间:2012-01-25 18:57:58

标签: python ajax web-scraping web-crawler

我为抓取工具设置了基本结构。现在我在一些php驱动的网站上发布它,它就像一个魅力。虽然现在我想从ajax内容构建数据表。

目前我正在使用Mechanize for PYTHON和perl构建我的抓取工具。虽然Mechanize模块不执行AJAX。我如何获得由异步ajax构建的内容?

我知道有一种名为Selenium的东西,一种真正的自动化浏览器。但这是我唯一的选择吗?

1 个答案:

答案 0 :(得分:1)

您可以运行无头浏览器,例如phantomjs,它可以理解JavaScript,DOM等,但您必须使用Javascript编写代码,这样做的好处就是您可以随心所欲。

还有另一种方法,但messy

您可以观察单击按钮时所做的请求(使用Firefox中的Firebug或Chrome中的开发人员工具)。比尝试对页面后面运行的javascript进行逆向工程,并尝试使用你的python代码做类似的事情,为此看看Spidermonkey