
2.3 第三方库的安装
本节介绍Python数据抓取所需要的第三方库的安装,包括请求、解析、数据存储这3类库的安装。
2.3.1 数据收集与处理流程
在讲第三方库的安装过程之前,先讲一下数据收集与处理的大概流程。在数据抓取页面的过程中,首先要模拟浏览器发出请求,这时需要用到Python的第三方库来实现HTTP请求操作。然后,在抓取到网页的代码后,需要从网页中提取信息。提取信息可以用正则表达式,并且在Python中有很多第三方解析库,可以非常高效、快捷地从网页中提取到有效的信息。最后,将提取的有效信息存入数据库。
2.3.2 请求库的安装
Python内置有urllib模块,用于访问网络资源,但它用起来比较麻烦,缺少很多实用的高级功能。常用的解决方案是使用requests库(请求库)。requests库是用Python语言编写的、基于urllib的、采用Apache 2 Licensed开源协议的HTTP库,它比urllib模块更加方便,可以简化大量的工作,完全满足HTTP测试需求。
1.相关链接
❑ GitHub:https://github.com/requests/requests.
❑ 官方文档:http://www.Python-requests.org/en/master。
❑ 中文文档:http://cn.Python-requests.org/zh_CN/latest。
2.安装
在命令行界面中输入如下命令,完成requests库的安装。

3.验证
在命令行模式中输入如下命令(如果是在Linux平台下,则需要输入Python 3)来验证requests库是否安装成功,如图2.13所示。

图2.13 requests库安装成功界面
如果没有任何错误提示,则表示requests库安装成功。
2.3.3 解析库的安装
Python中常用的解析库包括lxml库、BeautifulSoup库、JSON库等。
1.lxml库
1)相关链接
lxml库是Python的一个解析库,支持HTML和XML的解析,还支持XPath解析方式,而且解析效率非常高。XPath(XML Path Language,XML路径语言)是一门在XML文档中查找信息的语言,最初是用来搜索XML文档的,但是也同样适用于HTML文档的搜索。我们通过requests库获取返回的页面后,就需要用lxml库来解析获取的页面元素,从而找到我们需要的信息。lxml库的相关资料链接如下。
❑ GitHub:https://github.com/lxml/lxml.
❑ 官方文档:https://lxml.de。
❑ PyPI:https://pypi.org/project/lxml.
2)安装
在命令行界面中输入如下命令,完成lxml库的安装。

3)验证
在命令行模式中输入如下命令(如果是在Linux平台下,则需要输入Python 3)来验证lxml库是否安装成功,如图2.14所示。

图2.14 lxml库安装成功界面
如果没有任何错误提示,则表示lxml库安装成功。
2.BeautifulSoup库
1)相关链接
BeautifulSoup库是一个可以从HTML或XML文件中提取数据的Python库,简单来说,它能将HTML的标签文件解析成树形结构,从而方便获取指定标签的对应属性。例如,在官方彩票开奖数据网站,获取的信息如果用正则表达式进行处理,则这种方式既复杂,代码的可阅读性也低;如果通过BeautifulSoup库,则我们可以将指定的class或id值作为参数,来直接获取对应标签的相关数据,这样的处理方式十分简便。BeautifulSoup库当前的版本为BeautifulSoup 4.x,以前的版本已经停止维护,其相关资料链接如下。
❑ GitHub:https://github.com/lxml/lxml.
❑ 官方文档:https://www.crummy.com/software/BeautifulSoup/bs4/doc。
❑ 中文文档:https://www.crummy.com/software/BeautifulSoup/bs4/doc.zh。
❑ PyPI:https://pypi.org/project/beautifulsoup4.
2)安装
在命令行界面中输入如下命令,完成BeautifulSoup 4库的安装。

3)验证
在命令行模式中输入如下命令(如果是在Linux平台下,则需要输入Python 3)来验证BeautifulSoup 4库是否安装成功,如图2.15所示。

图2.15 BeautifulSoup 4库安装成功界面
如果输出的结果如图2.15所示,则表示BeautifulSoup 4库安装成功。