爬虫框架的安装
直接用requests、Selenium等库写爬虫,当爬取量不是太大,速度要求不高,是完全可以满足要求的。但是写多了会发现内部许多代码和组件是可以复用的,如果我们把这些组件抽离出来,将各个功能模块化,就慢慢会形成一个框架雏形,然后爬虫框架就形成了。
利用框架,我们可以不用再去关心莫些共能得具体实现,只需要关心爬取逻辑即可。有了塔门,可以大大简化代码量,而且框架也会变得清晰,爬取效率也会高许多。所以,如果有一定得基础,上手框架是一种好的选择。
爬虫框架有pyspider和Scrapy。下面是pyspider、Scrapy及其扩展库的安装方式。
1. pyspider的安装
pyspider是国人binux编写的强大的网络爬虫框架,它带有强大的WebUI、脚本编辑器、任务监控器、项目管理器以及结果处理器,同时支持多种数据库后端、多种消息列队,另外还支持Javascript渲染页面的爬取,使用起来非常方便。
解决方法:
- 打开安装Python的位置:python位置\Lib\site-packages\pyspider
比如我的安装位置:D:\ProgramData\Anaconda3\Lib\site-packages\pyspider
- 修改下列python文件中的async为shark(全部替换)
- run.py
-
webui\app.py
特别注意: 还有一个地方就是fetcher\tornado_fetcher.py这个文件还需要需改,这个里面的async不是都需要替换,这个文件中的CurlAsyncHTTPClient含有async,不需要改。IDE打开文件
使用Ctrl+r替换run.py、webui\app.py、还有fetcher\tornado_fetcher中的asnyc
cmd命令输入: pyspider all
浏览器输入http://localhost:5000, 就会进入 pyspider 的WebUI管理页面,这样我们的pyspider 就安装成功了。
其他问题可以参考:
2. Scrapy
Scrapy是一个十分强大的爬虫框架,依赖的库比较多,至少需要依赖的库有Twisted 14.0、lxml 3.4和pyOpenSSL 0.14。在不同的平台环境下,她所依赖的库也各不同,所以在安装之前,最好确保把一些基本库安装好。
3. Scrapy-Splash的安装
-d参数代表将Docker容器以守护态运行,中断远程服务器连接后,不会终止Splash服务的运行
docker安装:https://www.runoob.com/docker/windows-docker-install.html
- Scrapy-Splash的安装
安装python库:
pip3 install scrapy-splash
命令运行完毕后,即安装成功。
4. Scrapy-Redis的安装
Scrapy-Redis是Scrapy的分布式扩展模块,我们就可以方便地实现Scrapy分布式爬虫的搭建。
大部分内容参照《《Python 3网络爬虫开发实战》》
|