scrapy中间件

 新闻资讯     |      2019-08-07 09:45

方法:

process_request:

返回为none:继续请求

返回为request对象,把request对象交给调度器,进行后续请求

返回为response对象,不再请求,response交给引擎然后给爬虫

 

process_response:

返回为request对象,交给调度器继续请求

返回为response对象,交给下一个process_response处理

 

proces____ception:

返回为none,调用其他proces____ception方法继续处理,直到所有中间件调用完毕,调用默认的异常处理

返回为response对象,异常纠正,交给下一个process_response处理

返回为request对象,交给调度器继续请求

 

 

方法:

process_spider_input:

返回none,交给下一个process_spider_input处理

 

process_spider_output:

该方法必须返回包含requset或item对象的可迭代对象iterable

process_spider_exception:

返回为none,交给其他process_spider_exception继续处理

返回一个包含responser或item对象的可迭代对象,交给其process_spider_output方法

process_start_request:

接受一个可迭代对象且必须返回一个包含request对象的可迭代对象