1.scrapy
-
scrapy是什么
Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,能够快速的抓取
scrapy使用了异步网络框架,可以加快我们的下载速度
-
掌握Scrapy中每个模块的作用
引擎(engine):负责数据和信号在不同模块间的传递 调度器(scheduler):实现一个队列,存放引擎发过来的request请求对象 下载器(downloader):发送引擎发过来的request请求,获取响应,并将响应交给引擎 爬虫(spider):处理引擎发过来的response,提取数据,提取url,并交给引擎 管道(pipeline):处理引擎传递过来的数据,比如存储 下载中间件(downloader middleware):可以自定义的下载扩展,比如设置代理ip 爬虫中间件(spider middleware):可以自定义request请求和进行response过滤,与下载中间件作用重复
-
安装scrapy
pip install scrapy -i https://pypi.tuna.tsinghua.edu.cn/simple
-
创建Scrapy项目结构
scrapy startproject 项目名字 例: scrapy startproject myspider
-
cd到创建项目文件夹中
cd myspider
- 创建爬虫
scrapy genspider 爬虫名 允许爬取的域名 例: scrapy genspider baidu baidu.com
-
运行爬虫
scrapy crawl baidu
总结:
用Scrapy来实现爬虫,并不是我们想象的那样创建一个.py然后在这个文件中import导入,而是通过scrapy命令来构建相关的目录结构,最终通过命令来开启scrapy
到目前为止,Scrapy使用的流程如下:
1.创建Scrapy项目,命令是scrapy startproject 项目名称
2进入到创建出来的Scrapy项目文件夹
3.创建爬虫,命令是scrapy genspider 爬虫名 允许爬取的域名
4.运行Scrapy,命令是scrapy crawl 爬虫名