【发布时间】:2015-11-08 21:37:19
【问题描述】:
我正在尝试在 python 中使用漂亮的汤和机械化库来抓取几个网站。但是,我遇到了一个带有以下 robots.txt 的网站
User-Agent: *
Allow: /$
Disallow: /
根据维基百科,Allow 指令抵消了以下 Disallow 指令。我已经阅读了一些更简单的示例,并了解了它是如何工作的,但是这种情况对我来说有点令人困惑。 我是否可以假设允许我的爬虫访问该网站上的所有内容? 如果是的话,网站甚至会费心编写 robots.txt 似乎真的很奇怪......
额外信息:
当我试图抓取这个网站时,Mechanize 给了我一个错误,这个错误类似于Http error 403, crawling is prohibited because of robots.txt。如果我上面的假设是正确的,那么我认为 mechanize 在尝试访问该网站时返回错误的原因是因为它要么不具备处理此类 robots.txt 的能力,要么遵循不同的解释 robots.txt 文件的标准。 (在这种情况下,我只需要让我的爬虫忽略 robots.txt)
更新:
我偶然发现了这个问题
robots.txt allow root only, disallow everything else?
特别是我看了@eywu的回答,现在我觉得我最初的假设是错误的,我只被允许访问website.com而不是website.com/other-stuff
【问题讨论】:
标签: python mechanize robots.txt