S
Size: a a a
ss
S
ss
ss
ss
К
ss
B
class CustomRetryMiddleware(RetryMiddleware):
def process_response(self, request, response, spider):
print('------------------')
if request.meta.get('dont_retry', False):
return response
if response.status in self.retry_http_codes:
reason = response_status_message(response.status)
return self._retry(request, reason, spider) or response
if response.status == 200 and response.xpath(spider.retry_xpath):
return self._retry(request, 'response got xpath "{}"'.format(spider.retry_xpath), spider) or response
return response
ss
ss
class CustomRetryMiddleware(RetryMiddleware):
def process_response(self, request, response, spider):
print('------------------')
if request.meta.get('dont_retry', False):
return response
if response.status in self.retry_http_codes:
reason = response_status_message(response.status)
return self._retry(request, reason, spider) or response
if response.status == 200 and response.xpath(spider.retry_xpath):
return self._retry(request, 'response got xpath "{}"'.format(spider.retry_xpath), spider) or response
return response
К
S
ss
SPIDER_MIDDLEWARES = {
'scrapy.downloadermiddlewares.retry.RetryMiddleware': None,
'scrapping.custom_middleware.CustomRetryMiddleware': 550,
#'scrapping.middlewares.ScrappingSpiderMiddleware': 543,
}
RETRY_TIMES = 5
S
ss