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 为网站开发人员提供的自动化测试接口,它是 selenium2chrome浏览器 进行通信的桥梁。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