Scrapy 和 robots.txt 的尊重

Scrapy and respect of robots.txt

我昨天发现 Scrapy 默认尊重 robots.txt 文件 (ROBOTSTXT_OBEY = True)。

如果我用 scrapy shell url 请求 URL,如果我有回应,是否意味着 url 不受 robots.txt 保护?

根据文档,只有当您使用 scrapy startproject 命令创建项目时才默认启用它,否则应该默认为 False.

https://docs.scrapy.org/en/latest/topics/settings.html#robotstxt-obey https://docs.scrapy.org/en/latest/topics/downloader-middleware.html#topics-dlmw-robots

回答您的问题,是的,scrapy shell 命令确实遵循 settings.py 中定义的 robots.txt 配置。如果 ROBOTSTXT_OBEY = True,尝试在受保护的 URL 上使用 scrapy shell 命令将生成响应 None

您也可以通过命令行通过 robots.txt 设置来测试它:

scrapy shell https://www.netflix.com --set="ROBOTSTXT_OBEY=True"