昨天我发现Scrapy默认情况下会遵守robots.txt文件(ROBOTSTXT_OBEY = True
)。
如果我请求带有scrapy shell url
的URL,并且有响应,是否意味着url
不受robots.txt的保护?
答案 0 :(得分:0)
根据文档,仅当您使用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
命令确实遵守robots.txt
中定义的settings.py
配置。如果为ROBOTSTXT_OBEY = True
,尝试在受保护的URL上使用scrapy shell
命令将生成响应None
。
您还可以通过命令行通过robots.txt设置对其进行测试:
scrapy shell https://www.netflix.com --set="ROBOTSTXT_OBEY=True"