1.2 Python常用库的安装
工欲善其事,必先利其器。为了顺利开展爬虫工作,我们需要安装一些python相关的库,安装库的过程主要通过pip安装或者下载whl格式的安装包来进行安装。
注:使用whl安装时,前提是需要有wheel库,可以通过pip install wheel来进行安装wheel库的。在wheel库ready之后,可以通过如下命令直接安装与升级whl库。
pip install xxx.whl #安装xxx库
pip install -U xxx.whl #升级xxx库
1.Requests库
Requests
库可以进行方便地发送网络请求,传递URL参数并获取某个网页,非常简单。 使用pip
直接安装。
pip3 install requests
2. Selenium库
selenium
是一个跨平台的自动化测试工具,它本是为了测试 Web 应用程序测试,但是没想到到了爬虫的年代,它摇身一变成了爬虫的好工具。让我试着用一句话来概括 seleninm
: 它能控制你的浏览器, 有模有样地学人类”看”网页。
pip3 install selenium
3. ChromeDriver
ChromeDriver
是 google 为网站开发人员提供的自动化测试接口,它是 selenium2 和 chrome浏览器 进行通信的桥梁。selenium
通过JsonWire
协议与ChromeDriver
进行通信,selenium
实质上是对这套协议的底层封装,同时提供外部 WebDriver
的上层调用类库。 到官网下载对应系统的相应版本,完成后放置到某个配置完了环境变量的目录下,如Python或者pip所在的目录。
4. Phantomjs库
如果使用Selenium
,程序会最终调用真正的Chrome浏览器,很多时候,我们并不需要打开该浏览器来进行浏览,只需在后台运行一个无界面的浏览器,Phantomjs
就是干这个的,如Selenium
一样在官网下载完成之后,直接解压后添加bin目录到环境变量中,或者将其copy到某个设置完了环境变量的目录,如python或者pip所在目录。
最新更新:在安装完这个库的时候测试了一下PhantomJS,发现这个库与Selenium已经分手了~~~,提示可以使用Chrome或者Firefox的Headless模式。
如:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
chrome_options = Options()
# 无头模式启动
chrome_options.add_argument('--headless')
# 谷歌文档提到需要加上这个属性来规避bug
chrome_options.add_argument('--disable-gpu')
# 初始化实例
driver= webdriver.Chrome(chrome_options=chrome_options)
# 请求百度
driver.get("http://www.baidu.com")
5. lxml库
提供xpath
等的解析方式,可以进行网页的解析。
pip install lxml
6. beautifulsoup库
依赖于lxml
库一起使用,可以方便解析网页。
pip install beautifulsoup4
使用时从bs4中引入BeautifulSoup
>>>from bs4 import BeautifulSoup
7. pyquery库
与beautifulsoup
类似,解析网页的库,其使用语法类似于jquery
.
pip install pyquery
8. pymysql库
pymysql
是一个存储数据库,可以操作mysql数据库。
pip install pymysql
9. pymongo库
pymongo
来操作mongoDB数据库,使用MongoDB的时候不需要建表,也不需要关系数据表的结构,它是一个非关系型的数据库。
pip install pymongo
10. redis库
redis
也是一个非关系型数据库,主要用于分布式爬虫时存储数据,由于其它是全内存操作,所以读写性能非常强劲, Redis能读的速度是110000次/s,写的速度是81000次/s 。但是同时需要注意的是:同样由于是内存数据库,所以,单台机器,存储的数据量,跟机器本身的内存大小有关。
pip install redis
11. flask库
如django
类似,flask
是一个轻量的web框架,可以用于搭建一个web服务器。
pip install flask
12. jyputer库
jypyter
是一个交互式笔记本 notebook,但是我们可以在这个notebook里写上代码,支持运行超过40种编程语言,同时支持Markdown格式的文本。
pip install jypyter
这其中pip会自动安装依赖库,安装完成之后使用下述命令直接启动jupyter
则会自动打开默认浏览器在网页端开始编写代码或者文档记录。
jupyter notebook
Last updated