Bots 检测行为良好/众所周知的机器人

Bots 检测行为良好/众所周知的机器人,bots,googlebot,Bots,Googlebot,我觉得这个问题很有趣: 我有一个非常类似的问题,但我并不担心“行为不好的机器人” 每次访问我都会跟踪(除了谷歌分析)以下内容: 条目URL 推荐人 用户代理 Adwords(通过查询字符串) 用户是否进行了购买 等等 问题是,要计算任何类型的转化率,我最终会遇到大量的“机器人”访问,这大大扭曲了我的结果 我想忽略尽可能多的bot访问,但我想要一个不需要密切监视的解决方案,它本身不会影响性能,如果有人禁用了javascript,它最好仍然可以工作 是否有公布的前100名机器人的好名单?我确实在

我觉得这个问题很有趣: 我有一个非常类似的问题,但我并不担心“行为不好的机器人”

每次访问我都会跟踪(除了谷歌分析)以下内容:

  • 条目URL
  • 推荐人
  • 用户代理
  • Adwords(通过查询字符串)
  • 用户是否进行了购买
  • 等等
问题是,要计算任何类型的转化率,我最终会遇到大量的“机器人”访问,这大大扭曲了我的结果

我想忽略尽可能多的bot访问,但我想要一个不需要密切监视的解决方案,它本身不会影响性能,如果有人禁用了javascript,它最好仍然可以工作

是否有公布的前100名机器人的好名单?我确实在网站上找到了一个列表,但它似乎包含了成百上千的机器人。我不想检查每一个参考对数以千计的链接

这是当前的googlebot用户代理。它多久改变一次

 Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)

您可以尝试导入,并使用它来过滤来自这些用户代理的请求。可能与User-agents.org没有太大区别,但至少robotstxt.org列表是“所有者提交的”(假定)

该网站还链接到,尽管我没有立即看到他们数据的可下载版本

还有,你说

我不想检查每一个参考对数以千计的链接

这很公平——但如果运行时性能是一个问题,只需“记录”每个请求,并将其作为后处理(隔夜批处理,或作为报告查询的一部分)过滤掉即可

这一点也让我有点困惑

如果有人禁用了javascript,最好仍能工作

您是否将在服务器端编写日志作为您服务的每个页面的一部分?javascript在这种情况下不应该有任何区别(尽管很明显,禁用javascript的人不会通过Google Analytics得到报告)


p、 在提到robotstxt.org之后,值得记住的是,行为良好的机器人将从您的网站根目录请求
/robots.txt
。也许你可以利用这些知识,通过记录/通知你可能想要排除的机器人用户代理(尽管我不会自动排除UA,以防普通web用户在浏览器中键入/robots.txt,这可能会导致你的代码忽略真实的人)。我不认为随着时间的推移,这会导致太多的维护开销…

我意识到,与我所尝试的完全相反,这样做可能更容易

i、 e

我实际上想做的是获得一个准确的转换率,包含好的浏览器比排除机器人(好或坏)更有意义


此外,如果我找到一个“机器人”购买的“会话”,这可能意味着有一个新的浏览器(想想chrome)。目前我的机器人都没有购买过

机器人怎么会扭曲你的结果?Google Analytics是一个JavaScript库。@john i曾暗示,区别机器人的一个方法是在页面加载时使用JavaScript/AJAX“ping”,这将该会话标记为“启用JavaScript”。大多数机器人不使用javascript,但我;我不确定他们中的任何一个在多大程度上会这样做,也不知道将来会在多大程度上改变。特别是谷歌在javascript上的所有投资,我想他们可能会提高谷歌机器人运行javascript的能力
select count(*) as count, useragent from sessionvisit 
where useragent not like '%firefox%' 
and useragent not like '%chrome%'
and useragent not like '%safari%'
and useragent not like '%msie%'
and useragent not like '%gecko%'
and useragent not like '%opera%'
group by useragent order by count desc