文章目录
工欲善其事,必先利其器。为了顺利开展爬虫工作,我们需要安装一些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. jupyter库
jypyter
是一个交互式笔记本 notebook,但是我们可以在这个notebook里写上代码,支持运行超过40种编程语言,同时支持Markdown格式的文本。
pip install jupyter
这其中pip会自动安装依赖库,安装完成之后使用下述命令直接启动jupyter
则会自动打开默认浏览器在网页端开始编写代码或者文档记录。
jupyter notebook
现在比较流行的三大数据库有 Mysql
, MongoDB
与Redis
,其中Mysql
作为一个开源的关系型数据库被广泛引用于web开发;MongoDB
与Redis
为开源的非关系型数据库,无需关系数据表结构,开发时极为方便,尤其是用于爬虫的数据存储;其中Redis
由于是内存数据库存储方式,读写效率极高,被广泛用于并发场景的数据存储。
1. Mysql的安装配置
直接在官网下载相应系统的安装包,即可进行安装配置,注意保存好root账号。
可以使用Mysql Font作为GUI可视化管理工具。
2. MongoDB的安装配置
2.1 安装MongoDB
从官网下载安装包进行安装
2.2 配置数据存放目录
在windows的安装目录C:\Program Files\MongoDB\Server\3.6\
新建目录data\db
,存放数据。
2.3 配置日志存放目录与文件
在windows的安装目录C:\Program Files\MongoDB\Server\3.6\
新建目录data\logs
,并新建文件mongo.log
,存放MongoDB的日志文件。
2.4 将MongoDB配置成系统服务
- 以管理员模式运行
cmd
- 执行
mongod
命令,配置如下参数:
mongod --bind_ip 0.0.0.0 --logpath C:\Program Files\MongoDB\Server\3.6\data\logs --logappend --dbpath C:\MongoDB\Server\3.6\data\db --port 27017 --serviceName "MongoDB" --serviceDisplayName "MongoDB" --install
bind_ip
配置成0.0.0.0
表示任意地址均可以访问,logpath
指定日志路径,logappend
指定日志是以添加的方式存储而不是覆盖,dbpath
表示数据存储路径,port
指定端口,serviceName
指定服务的名字,serviceDisplayName
指定该服务最终以什么名字在系统中显示,install
表示将其安装到系统中最为一个系统服务。
- 配置服务启动方式
右键点击计算机的管理,进入到服务和应用程序
中,点击服务
,选中MongoDB
,右键点击启动,也可以设置成自动启动。
- 注意设置并记录mongoDB数据库账户,如:
admin/admin
3. Redis安装配置
3.1 安装Redis
下载msi格式的redis文件直接安装。
3.2 管理Redis
- 安装完成之后,已经自动在系统里设置了服务,并是自动启动,可在
服务和应用程序
中查看。 - 下载并安装可视化管理工具redis desktop manager,然后可以可视化管理该数据库。