爬虫学习过程涉及的软件:
软件
1. Python3.5.5
整体爬虫代码的框架语言,所有Python程序及包均基于本版本。
2. chromeDriver
模拟登陆chrome浏览器,驱动浏览器完成相关操作。
3.PhantomJS - 官方文档
一个无界面的,可脚本编程的WebKit浏览器引擎,原生支持多种Web标准:DOM操作、CSS选择器、JSON、Canvas和SVG。
Selenium包支持该引擎,使用该引擎,就可以避免运行过程中不断弹出浏览器。
4.MYSQL
一个关系型数据库,用于存储相关的数据。
5.Docker
一种容器技术,可以将环境和应用打包,形成一个独立的应用,这个应用可以直接被分发到任意一个支持Docker的环境中,通过简单的命令启动运行。
Python包
请求库
1. requests - 中文文档
Python中唯一的一个http原生库。
2.Selenium - 中文文档
一个自动化测试工具,利用他可以驱动浏览器执行特定的动作,如点击、下拉等操作。针对一些JavaScript渲染的页面来说,这种抓去方式非常有效。
3.aiohttp
可以在爬取过程中,提供异步Web服务的库。
解析库
1.lxml
Python的一个解析库,可以支持HTML和XML的解析,支持XPath的解析方式,解析效率较高。
2.beautifulsoup4
HTML和XML的解析库
3.pyquery
网页解析工具,提供了和jQuery类似的语法来解析html文档,支持css选择器,。
相关模块
1.tesserocr
Python的一个ORC(Optical Character Recognition光学字符识别)识别库。
2.pymysql
用于连接MYSQL数据库,在Python中访问Mysql数据库。
3.Web库-Flask
Flask一个轻量级的Web服务程序,用来做一些Web的API服务。
4.Tornode
Tornode一个支持异步的Web框架。
APP爬取相关库的安装
1.Charles
一个网络抓包工具。
2.mitmproxy
一个支持http和https的抓包工具,类似Charles和Fiddler的功能,通过控制台操作。