澄清为什么要排除机器人,以及你对错误分类的容忍度.
也就是说,你是否必须以牺牲机器人这样的真实用户为代价来排除每一个机器人?或者,如果机器人抓取您的网站,只要它们没有性能影响,它是否可以?
排除所有机器人的唯一方法是关闭您的网站.恶意用户可以将他们的僵尸程序分发到足以让您无法将其流量与真实用户区分开的机器上.像JavaScript和CSS这样的技巧不会阻止坚定的攻击者.
如果"愉快的媒介"令人满意,可能有用的一个技巧是隐藏CSS链接,以便浏览器中的用户看不到它们,但仍然在HTML中.跟随其中一个"毒药"链接的任何代理都是机器人.
用户代理可以伪造.Captchas已被破解.可以通过页面请求将有效的cookie发送回您的服务器.合法程序(如Adobe Acrobat Pro)可以在一个会话中进入并下载您的网站.用户可以禁用JavaScript.由于没有"正常"用户行为的标准度量,因此无法与机器人区分.
换句话说:不能将用户拉入某种形式的互动聊天,并希望他们通过图灵测试,然后再次,他们也可能是一个非常好的机器人.
你说有些用户显示为机器人是可以的,因此,
大多数机器人不运行 JavaScript。使用 javascript 对服务器进行类似 Ajax 的调用,将该 IP 地址标识为 NonBot。将其存储一段时间,以将来自该 IP 的未来连接识别为良好客户端,并防止进一步浪费 javascript 调用。
归档时间: |
|
查看次数: |
12843 次 |
最近记录: |