我应该如何解释一个空的用户代理?我有一些自定义分析代码,该代码只能分析人员流量。我有一份工作人员清单,其中列出了人流量和漫游器流量,但是空的User-agent被证明是有问题的。空的用户代理使我获得了大量流量,大约10%。
此外,我还通过分析当前日志来设计人员流量与机器人流量用户代理列表。因此,我可能在那里缺少很多条目。是否存在维护良好的表示机器人流量的用户代理列表,或者相反,是表示人员流量的用户代理列表?
我应该如何解释一个空的用户代理?我有一些自定义分析代码,该代码只能分析人员流量。我有一份工作人员清单,其中列出了人流量和漫游器流量,但是空的User-agent被证明是有问题的。空的用户代理使我获得了大量流量,大约10%。
此外,我还通过分析当前日志来设计人员流量与机器人流量用户代理列表。因此,我可能在那里缺少很多条目。是否存在维护良好的表示机器人流量的用户代理列表,或者相反,是表示人员流量的用户代理列表?
Answers:
如果您只想分析“人流量”,我将不计入用户代理字符串为空或丢失的消息。以我的经验,几乎所有浏览器都会发送一个。甚至大多数隐私插件或扩展都相当伪造(包括其他操作系统或客户端名称)或“规范化”(例如,没有发行号)或随机化(例如,有时FF,有时是IE字符串)UA字符串,但并未完全删除它们(因为这可能导致某些依赖它的网站出现问题,即使那不是个好主意。)
一个没有UA的简单请求可以这样完成:
wget --user-agent="" www.example.com
如您所见,您可以添加任何所需内容。存储和发布“在野外”发现的UA的网站没有太大用处,因为它们发现了很多废话。
也许有人只是递归地获取了您的内容。或使用某些SEO工具来分析您的网站(某些允许用户手动更改标头,而其他一些则有意忽略robots.txt行)。像这样的东西。在这种情况下,通常会伪造UA标头来隐藏客户和目的。
如果这些请求始终存在,那么进一步分析标头(代理?)或IP(某个块?涉及隐私的公司/代理人)可能会有所帮助。
我在一家安全公司工作,除其他外,我们还监控Bad Bot流量。
根据我的经验,使用空白用户代理数据进行的人类访问表明由“无头浏览器”机器人进行的抓取/垃圾邮件尝试(通常是抓取)。
这些访问者有时可以执行JS,因此它们将出现在GA中-仍然,这并不使他们成为人类:)
为“插件”道歉,但请注意,如果需要,我们提供免费的Bad Bot保护服务-以及CDN加速和其他功能。
在这种特定情况下,我们的系统会将此次访问识别为“可疑”,并根据已知的攻击媒介对其进行了验证,并且-如果仍然不确定-会进行进一步的测试和挑战。这些挑战可以无缝执行,而不会导致会话延迟。
不会神奇地为访问互联网的每一个软件提供用户代理。软件开发人员必须将该功能编程到他们的软件中。您空白的用户代理仅表示软件开发人员忘记将用户代理添加到其软件中。
在此问题的答案中,我看到了一些评论,将用户代理与隐藏您的身份或人性化进行了比较。这是一个荒谬的比较。用户代理与身份或人类无关。
认为它像鞋类。您在问游客之前,要穿什么样的鞋。最常见的用途是知道要穿哪种地毯,漂亮的红地毯用来穿正装鞋,丑陋的门垫来解决泥泞问题。靴子,并没有为访客提供过敏性地毯的地毯。
当访问者不想说出他们拥有的鞋类(也就是空的User-Agent)时,您将忽略它们。
是的,有很多好的做法试图根据User-Agent和其他请求标头信息来假设有关Web请求的事情。它们可能在99%的时间内工作良好,但是与许多其他类似的做法一样,它们很容易出现假阳性,从而损害了正常的无知用户。
碰到自己不小心使用一个空的User-Agent的问题时,我可以肯定地说,当Web服务以不同的方式对待您时,仅仅因为您不打算告诉您有关鞋类的信息而变得很有趣。