3

我开始为 Ruby 使用 Mechanize gem,我想知道 Web 服务器是否可以检测并阻止来自 Mechanize 代理的活动?

如果是,阻止 Mechanize 废弃或访问网站的代码或步骤是什么?

4

2 回答 2

2

他们可以通过多种方式检测自动化流程正在访问他们的站点:

  • 他们可以检查用户代理字符串。
  • 他们可以看到您的要求。浏览器请求 HTML 页面中的所有图像和 CSS。默认情况下不会机械化。
  • 一个人停下来阅读一页并理解它所说的内容。一段代码不会,除非它被编程为暂停,否则它将全速运行,因此请求一个接一个地快速跟进。

这些不一定指向 Mechanize 运行,而是代码抓取网站的指纹。

他们能做些什么呢?

  • 禁止该用户代理。
  • 禁止来自您的 IP 号码或域或子网的任何请求。
  • 禁止来自您的 IP 号码、域或子网的任何过快发生的请求。

有许多不同的方法可以处理这些事情,具体取决于他们的服务器和网络硬件。

这个问题对于 StackOverflow 来说是非常离题的,可能应该在https://serverfault.com/https://webmasters.stackexchange.com/上提问

于 2012-07-25T09:09:55.303 回答
0

您可以建立一个 robots.txt 文件并希望人们尊重它。

如果您开始通过 User-Agent 字符串阻止,他们可以假装是 IE。

于 2012-07-25T05:49:34.507 回答