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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用python爬取js动态生成内容的页面相关的知识,希望对你有一定的参考价值。

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

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

2 selenium web测试框架

selenium是一个web测试框架,它允许调用本地的浏览器引擎发送网页请求,所以,它同样可以实现抓取页面的要求。
参考技术A python 2.6 + selenium-2.53.6 + firefox45.0 + BeautifulSoup3.2.1
或者
python 2.6 + selenium-2.53.6 + phantomjs 2.1.1本回答被提问者采纳

如何用python抓取js生成的数据

一、查看相应的js代码,用python获取原始数据之后,模仿js编写相应的python代码。
二、通过接口api获得数据,直接使用python获取接口数据并处理。
三。终极方法。使用 Selenium和PhantomJS执行网页js代码,然后再获取数据,这种方法100%可以获取数据,确定就是速度太慢。
参考技术A 如果对抓取的性能没有什么要求的话, 尝试一下selenium或者watir吧.
web自动化测试脚本用好了可以做很多事情.
利用你的浏览器执行好js, 然后再从dom里面取数据.
另外一个情况, 如果你知道js是通过ajax或者api取数据的, 直接去抓数据源, 得到的不是json就是xml, 然后处理数据吧

以上是关于如何用python爬取js动态生成内容的页面的主要内容,如果未能解决你的问题,请参考以下文章

如何用JAVA爬取AJAX加载后的页面

如何用python+selenium+phantomjs获得一个网页的动态生成的html代码

Java_爬虫,如何抓取Js动态生成数据的页面?

请问一下 你知道如何用爬虫爬取到动态的JS写的网站信息吗?

如何用python 爬虫在社交媒体上抓取评论

如何用python获取京东的评论数据