在哪一方面生成'HTTP错误403:robots.txt禁止请求'?

时间:2011-11-07 09:37:56

标签: python mechanize

我正在尝试使用Mechanize来简化一些例程。我已设法使用br.set_handle_robots(False)绕过该错误。有人谈论如何使用它是道德的。我想知道的是在我这边或在服务器端产生这个错误的地方?我的意思是当Mechanize看到一些robots.txt规则时抛出异常,或者当它检测到我使用自动化工具时服务器拒绝了请求吗?

2 个答案:

答案 0 :(得分:2)

服务器检测到用户代理。如果用户代理在robots.txt中匹配一个,则客户端将应用这些规则。 默认情况下,mechanize返回“Python-urllib / 2.7”。

请参阅http://en.wikipedia.org/wiki/Robots_exclusion_standard

答案 1 :(得分:0)

服务器通过此类响应阻止您的活动。

是你的网站吗?如果没有,请遵守以下规则:

  1. 服从robots.txt档案
  2. 在请求之间设置延迟,即使robots.txt不需要它。
  3. 在User-Agent标题中提供一些联系信息(电子邮件或页面URL)。
  4. 否则,准备好的网站所有者会根据用户代理,IP或其他他认为会使您与合法用户区别开来的信息阻止您。