一、scrapy
1、创建爬虫项目
scrapy startproject 项目的名字
scrapy startproject scrapy_baidu
注意: 项目的名字不允许数字开头,不能包含中文
2、创建爬虫文件
要在spiders文件夹中创建爬虫文件
cd scrapy_baidu/scrapy_baidu/spiders
创建爬虫文件
scrapy genspider 爬虫文件的名字 要爬取的网页
eg: scrapy genspider baidu www.baidu.com
3、运行爬虫代码
scrapy crawl 爬虫的名字
eg: scrapy crawl baidu tc
二、代码框架
1、scrapy项目的结构
项目的名字
项目的名字
spiders文件夹 (存储的是爬虫文件)
init
自定义文件
init
items 定义数据结构的地方 爬取的数据包含哪些
middlewares 中间件 代理
pipelines 管道 用来处理下载的数据
settings 配置文件
2、response的属性和方法
response.text() 获取响应的字符串
response.body() 获取响应的二进制数据
response.xpath() 解析
response.extract() 提取seleetor对象的data属性值
response.extract_first() 提取seleetor列表的第一个数据
3、scrapy架构组成
(1)引擎
(2)下载器
(3)spiders
(4)调度器
(5)管道
4、scrapy工作原理
1、引擎想spiders要url
2、引擎将要爬取的url给调度器
3、调度器会将url生成请求对象放入到指定的队列中
4、从队列中出队一个请求
5、引擎将请求交给下载器进行处理
6、下载器发送请求获取互联网数据
7、下载器将数据返回给引擎
8、引擎将数据再次给spiders
9、spiders通过xpath解析该数据,得到数据或者url
10、spiders将数据或者url给引擎