如何在Scrapy框架中使用RobotsTxtMiddleware?
作者:互联网
Scrapy框架有RobotsTxtMiddleware.它需要确保Scrapy尊重robots.txt.需要在设置中设置ROBOTSTXT_OBEY = True,然后Scrapy将尊重robots.txt策略.我做了它并且运行蜘蛛.在调试中我见过http://site_url/robot.txt的请求.
>这意味着什么,它是如何工作的?
>我如何处理响应?
>我如何从robot.txt中查看和理解规则?
解决方法:
spyder请求robot.txt是规则所在的正常现象.
robot.txt基本上是一个url黑名单,你不应该访问/抓取使用glob / regex语法来指定禁用的URL.
Scapy将读取robot.txt并将这些规则转换为代码.在spyder遇到url的爬网过程中,它首先验证从robot.txt生成的规则,即可以访问URL.如果URL未被robot.txt列入黑名单,则scrapy将访问该URL并发送响应.
robot.txt不仅是黑名单网址,还提供了抓取速度.这是一个示例robot.txt:
User-Agent: *
Disallow: /x?
Disallow: /vote?
Disallow: /reply?
Disallow: /submitted?
Disallow: /submitlink?
Disallow: /threads?
Crawl-delay: 30
标签:python,scrapy,robots-txt 来源: https://codeday.me/bug/20190623/1274090.html