前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Scrapy框架-中间件

Scrapy框架-中间件

作者头像
小小咸鱼YwY
发布2020-06-19 15:43:08
3170
发布2020-06-19 15:43:08
举报
文章被收录于专栏:python-爬虫python-爬虫

一.中间件中主要有3个函数方法

  • process_request:处理请求,默认返回值是None
  • process_response:处理响应,默认返回值是response对象
  • process_exception:处理错误信息,默认返回值是None

二.中间件三个方法的返回值返回的结果

1.process_request

返回None:会走下一个中间件的process_request正常往下走

返回request对象:把对象返回给引擎再引擎再从头重新给第一个中间件的process_request

返回response对象:把对象返回给给最后一个中间件process_response

抛出异常:返回一个中间件process_exception

2.process_response

返回None:不会传给上一个中间件process_response,中途端口

返回request对象:把对象返回给引擎再引擎再从头重新给第一个中间件的process_request

返回response对象:给上一个中间件process_response正常往下走

抛出异常:不会被process_exception 捕获,直接给errback

3.process_exception

返回None::给上一个中间件process_response正常往下走

返回request对象:把对象返回给引擎再引擎再从头重新给第一个中间件的process_request

返回response对象:把对象返回给给最后一个中间件process_response

三.中间件的设置

setting.py中设置

代码语言:javascript
复制
#setting.py下面这段代码注释打开即可
DOWNLOADER_MIDDLEWARES = {
    #字典前面的key代表中间件的类
    #其中后面的参数代表优先级数字越小优先级越大
    'myscrapy.middlewares.MyscrapyDownloaderMiddleware': 543, 
}
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-10-22 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一.中间件中主要有3个函数方法
  • 二.中间件三个方法的返回值返回的结果
    • 1.process_request
      • 2.process_response
        • 3.process_exception
        • 三.中间件的设置
        相关产品与服务
        消息队列 TDMQ
        消息队列 TDMQ (Tencent Distributed Message Queue)是腾讯基于 Apache Pulsar 自研的一个云原生消息中间件系列,其中包含兼容Pulsar、RabbitMQ、RocketMQ 等协议的消息队列子产品,得益于其底层计算与存储分离的架构,TDMQ 具备良好的弹性伸缩以及故障恢复能力。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档