spider整理

Scrapy框架是一个Python的爬取网站数据,提取结构性数据的应用框架,用途广泛。
Scrapy Engine(引擎):负责Spider(爬虫),ItemPipeline,Downloader,Scheduker中间的通讯,信号,数据传递等,
Downloader(下载器):负责下载引擎发送的所有的Requests请求,并将其获取到的Responses交给引擎,于引擎交给Spider来处理
Spider(爬虫):负责处理所有的Responses,从中分析提取数据,获取item字段的所需的数据,并将其需要跟进的URL提交给引擎,再次进入调度器
Item Pipeline(管道):负责处理Spider中获取的item,并进行后期处理的地方
Downloader Middewares(下载中间件):可以自定义下载功能的组件
Spider Middlewares(Spider中间件):可以自定扩展和操作引擎和Spider中间通信的功能组件(比如进入Spider的Responses;和从Spider出去的Requests)
文件介绍:
spider:放置爬虫文件
items:处理引擎传输过来的数据
middlewares:自定义requests请求和进行response过滤
pipelines:处理spider模块分析好的结构化数据,如保存入库等
流程:
1、Spider爬虫部分发送请求,通过SpiderMiddleware中间层处理后发送给ENGINE引擎模块
2、引擎模块将请求发送给SCHEDULER模块进行调度
3、SCHEDULER模块将可以执行的请求调度给引擎模块
4、引擎模块将请求发送给DOWNLOADER下载模块进行下载,期间会经过DownloadMiddleware中间件进行处理
5、下载模块将爬取好的网页响应经过DownloaderMiddleware中间间处理后传递给引擎模块
6、引擎模块将响应传递给Spider爬虫模块进行解析
7、在爬虫模块我们自定义解析方式对响应解析完成后生成Item对象或者新的Request对象,经过SpidderMiddleware发送给引擎模块
8、如果是Item对象传递给item和pipeline来进行对应的处理;如果是Request对象则继续调度下载,重复之前的步骤。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Scrapy架构概览 要探究清楚Spider Middleware,首先得对Scrapy框架的整体架构有个大致的认...
    逆向与爬虫的故事阅读 5,279评论 1 19
  • scrapy框架的流程图2018-11-01框架流程图 1、scrapy框架主要为个块      (1)Scrap...
    dream_seeker阅读 4,592评论 0 1
  • 一、准备工作1、系统更新sudo apt-get updatesudo apt-get upgrade2、安装必要...
    0ne0ne阅读 10,211评论 0 0
  • 最近复联四是已经放出了最新的预告片,在这个预告片中,各个人物悉数登场,就连大家一直担心的钢铁侠都回来了,当然之前消...
    煜昱灬阅读 1,124评论 0 1