【问题标题】:How to recognize a bot in rails [duplicate]如何识别rails中的机器人[重复]
【发布时间】:2013-12-21 12:13:15
【问题描述】:

我正在尝试记录对我网站的访问,但我不断让爬虫意外触发我的代码。 Rails 控制器中是否有任何方法可以确定用户是否是 googlebot 等机器人?

【问题讨论】:

  • 如果这是随意的,那么您可以检查用户代理字符串,或创建一个有效的 robots.txt。如果这是安全的,那么机器人很容易谎称它是机器人。您还可以要求对您不想被看到的内容进行身份验证。

标签: ruby-on-rails


【解决方案1】:

您可以检查 HTTP 标头,尤其是用户代理字符串。

http://www.useragentstring.com/pages/Googlebot/

大多数友好的机器人在其用户代理中都有“机器人”。

另一个建议是使用 Google Analytics(分析)之类的工具来跟踪您的访问。这比实现自己的要好得多。

【讨论】:

  • 有什么想法可以在 routes.rb 中做到这一点吗?
  • routes.rb 仅用于配置路由。您应该在 ApplicationController 中添加一个带有 before_filter 的方法,以检查用户代理的每次调用并采取相应措施。
猜你喜欢
  • 1970-01-01
  • 2012-08-06
  • 2010-09-30
  • 1970-01-01
  • 2011-05-18
  • 2012-07-01
  • 1970-01-01
  • 2015-11-21
  • 2019-01-19
相关资源
最近更新 更多