Обрабатывает ли scrapy-crawlera код состояния 429? - PullRequest
0 голосов
/ 24 декабря 2018

Хотите знать, знает ли кто-нибудь, обрабатывает ли связующее ПО scrapy-crawlera код состояния 429 при использовании scrapy или если мне нужно реализовать собственную логику повторных попыток?

Кажется, я нигде не могу найти ее документированной

Ответы [ 2 ]

0 голосов
/ 24 декабря 2018

Чтобы ответить на ваш вопрос: НЕТ , scrapy-crawlera Промежуточное программное обеспечение не обрабатывает статус 429, на самом деле оно не "обрабатывает" любой статус, оно просто обрабатываетсвязь между Crawlera и Scrapy.

Теперь, примерно Crawlera, они обрабатывают статус 429 по умолчанию, что означает, что, когда они получают статус ответа 429, они отмечаютЭто как запрет и повторите тот же запрос.

Если Crawlera не удалось после нескольких попыток, он вернет клиенту статус 503 (в данном случае Scrapy).

0 голосов
/ 24 декабря 2018

Вы можете расширить список повторных кодов с помощью:

from scrapy.settings.default_settings import RETRY_HTTP_CODES

(см. Документацию здесь: https://doc.scrapy.org/en/latest/topics/downloader-middleware.html#std:setting-RETRY_HTTP_CODES)

А затем у вас, паук:

custom_settings = {
    'RETRY_HTTP_CODES': RETRY_HTTP_CODES + [429],
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...