请求库的安装
- requests:阻塞式http请求库
$ pip install requests
- selenium:自动化测试工具,驱动浏览器执行一些操作
$ pip install selenium
- chromedriver:谷歌浏览器驱动程序
- 安装配置
- 官网 https://sites.google.com/a/chromium.org/chromedriver/downloads
注意:先查看谷歌浏览器的版本,官网上下载对应版本的驱动,将下载后的可执行文件配置到环境变量下即可
- 测试安装
# cmd下输入下列命令 $ chromedriver
- phantomjs:无界面的、可脚本变成的浏览器引擎
- 安装
- 下载地址http://phantomjs.org/download.html
- 建议将可执行文件配置到当前python环境的目录下,否则引入可能会报错'phantomjs' executable needs to be in PATH.
- 测试安装
# cmd输入 $ phantomjs --version
- aiohttp:提供异步的http请求库
- 安装
$ pip install aiohttp
- 官方推荐同时安装的两个库
- cchardet:字符编码检测库
- aiodns:加速DNS解析库
- 安装
$ pip install aiodns cchardet
解析库的安装
- lxml:python解析库,支持HTML、XML、xpath解析
- 安装
$ pip install lxml
- Beautiful Soup4::python解析库,支持HTML、XML,依赖于lxml
- 安装
$ pip install beautifulsoup4
- pyquery:提供了和JQuery类似的语法解析html,支持css选择器
- 安装
$ pip install pyquery
- tesserocr:识别图形验证码的库
- 安装
- 由于tesserocr依赖于tesseract,需要先下载tesseract
- 下载地址 https://digi.bib.uni-mannheim.de/tesseract/
可以勾选language data,可以识别多种语言
# tesseract安装成功后 $ pip install tesserocr pillow
- 安装tesserocr出现的错误和解决办法
- 报错缺Visual C++ 14.0
error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": https://visualstudio.microsoft.com/downloads/
- 下载地址 https://go.microsoft.com/fwlink/?LinkId=691126
- 下载成功后安装继续报错
error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\BIN\\x86_amd64\\cl.exe' failed with exit status 2
- 查了好多办法,都不行,放弃,直接安装whl文件
- whl文件下载 https://github.com/simonflueckiger/tesserocr-windows_build/releases
- 注意:下载对应tesseract版本和python版本的tesserocr
- 下载成功后进入下载文件的路径执行下面命令
$ pip3 install tesserocr-2.2.2-cp36-cp36m-win_amd64.whl
- 安装成功,执行程序,发现tesserocr的一些方法初始化失败,报错信息
RuntimeError: Failed to init API, possibly an invalid tessdata path: D:\XXXX\
- 网上查了很多资料,配置系统变量、tessdata文件移来移去都不行,后来仔细研究一下报错信息,说的很明确这个路径的tessdata无效,将安装的tesseract目录下tessdata文件移到错误提示的目录下了,完美执行。
数据库的安装
- 关系型数据库:存储形式为表结构
- 菲关系型数据库:存储形式为键值对
- MySQL:轻量级的关系型数据库,官网上下载安装包进行安装即可
安装完成后,可以在计算机-管理-服务中开启或关闭MySQL服务。
- MongoDB:c++编写的非关系型数据库,开源分布式文件存储
- 下载地址 https://www.mongodb.com/dr/fastdl.mongodb.org/win32/mongodb-win32-x86_64-2008plus-ssl-4.0.6-signed.msi/download
- 占用端口:27017
- 可视化工具:Robo 3T
- 命令行启动服务
$ mongod --dbpath 'mongobd的data下db的路径'
- Redis:基于内存的菲关系型数据库,高效
- 下载地址 https://github.com/MicrosoftArchive/redis/releases
- 占用端口:6379
- 可视化管理工具:Redis Desktop Manager
与Python交互的存储库的安装
- pymysql
$ pip install pymysql
- pymongo
$ pip install pymongo
pycharm安装不上的话,setting中安装即可
- redis-py
$ pip install redis
- Redisdump:用于Redis数据导入导出的工具,基于Ruby实现的
- 安装Ruby
- 下载地址 http://www.ruby-lang.org/zh_cn/documentation/installation
- 下载完成后配置到系统变量
- 执行命令
$ gem install redis-dump
web库的安装
- flask:轻量级的web框架
$ pip install flask
- tornado:支持异步I/O的web框架
$ pip install tornado
爬虫框架的安装
1、pyspider:国内、带有webUI、脚本编辑器、任务监听、项目管理器、结果处理器、支持多种消息队列、数据库,还支持js渲染页面的爬取
注意:pyspider支持js渲染,因此依赖phantomjs,安装前确保phantomjs已经安装
- 安装
$ pip install pyspider
- 可能出现的错误Deprecated option 'domaincontroller': use 'http_authenticator.domain_controller' instead.
- 原因:安装pyspider3.x的时候,会默认安装wsgidav3.x,而wsgidav3.x现在还不太稳定,卸载后改成wsgidav2.x即可
- 解决
$ pip uninstall wsgidav $ pip install wsgidav==2
- 启动pyspider
$ pyspider all
- 默认监听端口5000,访问http://locallhost:5000,可访问webUI管理页面
2、scrapy:十分强大的爬虫框架,依赖较多
- 安装
$ pip install scrpay
- 可能会出现的错误
参考文章
3、scrapy-redis:scrapy分布式扩展模块
- 安装
$ pip install scrapy-redis
4、scrapy-splash:是scrapy支持js渲染的工具,需要安装splash服务,和scrapy-splash的python库,供在scrapy中使用。
- 安装scrapy-splash
$ pip install scrapy-splash
- 安装splash服务,通过docker安装
$ docker run -p 8050:8050 scrapinghub/splash
- 后台运行
$ docker run -d -p 8050:8050 scrapinghub/splash
- 可能出现的错误
- 守护进程可能出现端口占用的错误
$ docker ps $ docker kill -s kill 'id'
- 访问localhost:8050没有反应,打开docker terminal,查看默认连接的虚拟IP,会有这样的提示" docker is configured to use the default machine with IP x.x.x.x"
部署相关库的安装
1、docker:一种容器技术,可以将应用和环境进行打包,形成一个独立的类似于iosapp的“应用”。放到任意一个支持docker的环境中即可使用。
- 下载地址 https://hub.docker.com/editions/community/docker-ce-desktop-windows
- cmd输入docker进行测试
- 可能出现的问题,如果win10家庭版不能安装成功可以安装Docker Toolbox
- 下载完成后,安装后找不到bash.exe文件 是因为安装的时候已经安装过git了,解决办法参考 https://blog.csdn.net/A632189007/article/details/78601213