如何用python爬取js动态生成内容的页面

JavaScript09

如何用python爬取js动态生成内容的页面,第1张

抓取js动态生成的内容的页面有两种基本的解决方案

1用dryscrape库动态抓取页面

js脚本是通过浏览器来执行并返回信息的,所以,抓取js执行后的页面,一个最直接的方式就是用python模拟浏览器的行为。WebKit 是一个开源的浏览器引擎,python提供了许多库可以调用这个引擎,dryscrape便是其中之一,它调用webkit引擎来处理包含js等的网页!

2 selenium web测试框架

selenium是一个web测试框架,它允许调用本地的浏览器引擎发送网页请求,所以,它同样可以实现抓取页面的要求。

简单的说,做不到。

如果要抓取JS生成的页面,可以考虑用PhantomJS。

其原理大概就是在你的服务器上开了一个webkit内核的浏览器,然后在浏览器里面打开页面,在页面load之后,你可以通过API获取页面上的DOM,同时也可以进行点击之类的操作。

如何使用,不是这里面能说清楚的。还是自己差一些资料吧。