在处理数据采集过程中,相信大家都会遇到动态网站的采集,如果是几个或者几十个,都可以通过抓包,分析数据流直接获取数据,但是当有几千或者几万个的时候,抓包就显得太过于浪费金钱和时间了。这也是Pyppeteer、selenium、PhantomJS等存在的原因。今天主要介绍一下Pyppeteer。
Pyppeteer其实是Puppeteer的Python版本,下面简单介绍下Pyppeteer的两大特点,chromium浏览器和asyncio框架:
1).chromium
Chromium是一款独立的浏览器,是Google为发展自家的浏览器GoogleChrome而开启的计划,相当于 Chrome的实验版,Chromium的稳定性不如Chrome但是功能更加丰富,而且更新速度很快,通常每隔数小时就有新的开发版本发布。
Pyppeteer的web自动化是基于
来实现的,由于chromium中某些特性的关系,Pyppeteer的安装配置非常简单,关于这一点稍后我们会详细介绍。
2).asyncio
asyncio是Python的一个异步协程库,自3.4版本引入的标准库,直接内置了对异步IO的支持,号称是Python最有野心的库,