爬虫Scrapy框架之学习使用(二):DownloaderMiddleWares
2018-01-25 08:14
260 查看
DownloaderMiddleWares主要有三个方法:
def process_request(self, request, spider):#处理请求def process_response(self, request, response, spider):#处理响应
def process_exception(self, request, exception, spider):#处理异常
中间件的流程和Django的中间件的流程一样,都是一层层进行处理,但是有点不一样的地方:如果请求或者异常被中途拦截了,那么会从响应的时的第一层开始回传,也就是请求的最后一层,这个地方需要注意下。
process_request:
这里面我们可以对请求进行再次处理,比如添加请求头、添加代理等。
返回值:
None,继续执行后续中间间;
response对象,停止执行process_request,开始执行process_response;
request对象,停止中间件的执行,直接把request交给调度器
raise IgnoreRequest抛异常,停止process_request执行,proccess_exception被触发执行。
process_response:
返回值:
response对象,交给其他中间件process_response执行;
request对象,会直接返回交给调度器;
raise IgnoreRequest异常,触发执行Request.errback
process_exception:
返回值
None,交给后续中间件处理异常;
response对象,触发process_response执行,停止process_exception;
request对象,会交给调度器重新发起请求。
相关文章推荐
- Scrapy爬虫框架学习之使用start_requests函数实现用户登录
- Scrapy爬虫框架学习笔 二 CrawlSpider的使用
- python爬虫人门(10)Scrapy框架之Downloader Middlewares
- 爬虫Scrapy框架之学习使用(一)
- Python爬虫框架Scrapy 学习笔记 5 ------- 使用pipelines过滤敏感词
- 爬虫Scrapy框架之学习使用(三):信号(Signals)
- Python爬虫框架Scrapy 学习笔记 10.3 -------【实战】 抓取天猫某网店所有宝贝详情
- 使用Scrapy框架编写爬虫
- Python爬虫框架Scrapy 学习笔记 8----Spider
- Python爬虫框架Scrapy 学习笔记 1 ----- 环境搭建
- Python的Scrapy爬虫框架简单学习笔记
- windows下使用python的scrapy爬虫框架,爬取个人博客文章内容信息
- 使用python scrapy爬虫框架 爬取科学网自然科学基金数据
- 零基础写python爬虫之使用Scrapy框架编写爬虫
- scrapy爬虫框架的使用
- 讲解Python的Scrapy爬虫框架使用代理进行采集的方法
- Python爬虫框架Scrapy 学习笔记 7------- scrapy.Item源码剖析
- Python爬虫框架Scrapy 学习笔记 10.2 -------【实战】 抓取天猫某网店所有宝贝详情
- Python爬虫框架Scrapy 学习笔记 10.2 -------【实战】 抓取天猫某网店所有宝贝详情
- 零基础写python爬虫之使用Scrapy框架编写爬虫