Получить ответ, если сайт не сканируется из-за robots.txt - PullRequest
0 голосов
/ 29 мая 2018

Я пытаюсь сканировать определенные пользователем сайты, но не могу сканировать сайт, где robots.txt препятствует сканированию.Это нормально, но я хочу получить ответ, в котором я могу показать пользователю, что "сайт, который вы вошли, не позволяет сканировать из-за robots.txt".

Есть еще 3 типа предотвращения, для которых я получил код и обработал соответственно, но только это исключение (т.е. предотвращение с помощью robots.txt), которое я не могу обработать.Поэтому, пожалуйста, дайте мне знать, если есть какой-либо способ обработать дело и показать соответствующее сообщение об ошибке.

Я использую Python 3.5.2 и Scrapy 1.5

1 Ответ

0 голосов
/ 30 мая 2018

Вы должны использовать ROBOTSTXT_OBEY

ROBOTSTXT_OBEY=False

Подробнее о RobotsTxtMiddleware :

Это промежуточное ПО отфильтровывает запросы, запрещенные стандартом исключения robots.txt.

Чтобы убедиться, что Scrapy соблюдает robots.txt, убедитесь, что промежуточное ПО включено, а параметр ROBOTSTXT_OBEY включен.

Если для Request.meta для ключа dont_obey_robotstxt установлено значение True, это промежуточное ПО будет игнорировать запрос, даже если включен ROBOTSTXT_OBEY.

...