从 Python 在网页上执行 Javascript 方法

Posted

技术标签:

【中文标题】从 Python 在网页上执行 Javascript 方法【英文标题】:Execute Javascript method on web page from Python 【发布时间】:2012-11-07 02:59:34 【问题描述】:

我正在为特定网页编写一个网络爬虫,我正在使用“urllib2.Request(MyURL)”和“BeautifulSoup”来执行此操作,但问题是 MyURL 中的页面上有一个分页并且下一页加载(在同一个 myURL/page 中)通过点击一个链接,这个链接后面是写成的 javascript 方法

 javascript:__doPostBack('rptPagingBottom$ctl01$btnPage','') .

现在如果不从 Python 执行这个 Javascript 函数,我就无法获得完整的页面列表。如何从 Python 调用这个 Javascript 方法,以便获取该网页的所有页面?

我发现了一个相关问题here 建议使用(Rhino、V8、SeaMonkey),但我根本没有得到这个。如果可能的话,我需要一些示例代码。

【问题讨论】:

【参考方案1】:

尝试Selenium 处理这种肮脏的工作(内联 js、ajax 页面加载)。它能够准确地模拟浏览器可以使用 python 和浏览器驱动程序做什么。

您可以通过使用关键字“selenium crawler”搜索 google 来获取有关如何将其用作爬虫的一些信息。

【讨论】:

以上是关于从 Python 在网页上执行 Javascript 方法的主要内容,如果未能解决你的问题,请参考以下文章

认识 JavaScrip

javascrip基础课程-1

htm初学笔记

AJAX

JavaScrip ajaxt和python flask通过json传递数据的方法

JavaScrip的入门基础1