Я добавляю промежуточное ПО для загрузки для своего проекта. Если я не добавлю функцию sleep
в process_request
, она будет работать нормально, но если я добавлю ее, обратного вызова для моего запроса не будет.
class picMiddleware2(object):
def __init__(self):
pass
def process_request(self, request, spider):
if request.url != "https://www.aqistudy.cn/historydata/":
time.sleep(1) # if i delete this code, it works fine
return scrapy.http.HtmlResponse(url=request.url, body="ddddd", encoding='utf-8', request=request)
Ниже приведены мои настройки для промежуточного программного обеспечения:
DOWNLOADER_MIDDLEWARES = {
'air_history.middlewares.picMiddleware2': 545,
# 'air_history.middlewares.AreaSpiderMiddleware': 543,
}
Я просто хочу знать, почему это так работает.