Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 有多少机器人拥有JS;启用";?_Javascript_Spam Prevention_Bots - Fatal编程技术网

Javascript 有多少机器人拥有JS;启用";?

Javascript 有多少机器人拥有JS;启用";?,javascript,spam-prevention,bots,Javascript,Spam Prevention,Bots,我们说的是你每天平均使用的垃圾邮件机器人——那些我们试图防止使用验证码的机器人 他们中有多少人能够在某种嵌入式浏览器中运行JS? 如果数量很小,那么像这样的解决方案究竟如何有用: 除了明显的可用性/可访问性问题外,这些拖放式解决方案要求客户端具有JS。甚至没有退路。那么,假设它是为了防止机器人(非人类)的攻击,那么它不是完全多余的,或者至少是多余的,因为有多少机器人在技术上有能力尝试这样的事情 如果客户端有JS(这是此解决方案工作的先决条件),那么假设客户端不是机器人难道不安全(在合理的范围内)

我们说的是你每天平均使用的垃圾邮件机器人——那些我们试图防止使用验证码的机器人

他们中有多少人能够在某种嵌入式浏览器中运行JS?

如果数量很小,那么像这样的解决方案究竟如何有用:

除了明显的可用性/可访问性问题外,这些拖放式解决方案要求客户端具有JS。甚至没有退路。那么,假设它是为了防止机器人(非人类)的攻击,那么它不是完全多余的,或者至少是多余的,因为有多少机器人在技术上有能力尝试这样的事情


如果客户端有JS(这是此解决方案工作的先决条件),那么假设客户端不是机器人难道不安全(在合理的范围内)?

这不是多余的。如果您只是检测Javascript,人们仍然可以启动Selenium实例并假装发表评论。现在这样做的垃圾邮件机器人数量很少,但随着垃圾邮件战争的发展,你可以打赌垃圾邮件机器人将转向其他方法,如使用浏览器。如果你检测Javascript并让他们拖放东西,这肯定会证明你是人类

但我认为这种实现并不实用,因为仍然有%的人出于任何原因关闭了JS。我听说这个百分比是2%或3%,当你谈论成千上万的游客时,这仍然是一个很好的数字


另一种选择是使用noscript选项,如果用户想在博客上发表评论,它会要求用户激活Javascript

是的,很少有Spambot会启用JavaScript

垃圾邮件是一种游戏。只有很小比例的垃圾邮件会为垃圾邮件发送者带来收入。如果你能增加垃圾邮件的成本,你就使得它在经济上不可行。在支持JavaScript的浏览器中发送垃圾邮件比在命令行上发送垃圾邮件要昂贵得多,因此如果您坚持使用curl,一次可以发送更多的垃圾邮件

是的,这是多余的

与其让用户执行这项毫无意义的任务,不如自动执行javascript检查。它可以像脚本一样简单,获取站点的域名并将其作为隐藏字段插入到每个表单中。这将停止所有垃圾邮件发送者的驱动。如果你的网站是高姿态足以吸引自定义垃圾邮件发送者,这个解决方案将是不够的


对于那些没有JavaScript的用户,只要在发布失败后向他们显示一个常规的旧图像验证码即可。

更大的问题是可用性IMHO。验证码总是会降低转换率,而且通常会显著降低转换率。如果您的目标是使用JS作为阻止机器人的手段,那么我可以告诉您,它已经将我的机器人流量显著减少了90%以上

只需合并一个由JS填充的隐藏字段。如果没有填写,他们要么是一个机器人,要么是一个JS关闭的白痴,你根本不想迎合他们

还包含一个在DOM中可见的隐藏字段。使用类似“位置:绝对;左侧:9999px;顶部:-9999px”的CSS使其从屏幕上飞走。不要使用“显示:无”;如果填写此字段,则表示它们是机器人


我用它减少了90%以上的垃圾邮件,所以你应该使用它而不是验证码类型,除非你是一个大企业。如果您是一家大型企业,那么您唯一真正的解决方案就是后端服务器端解决方案。祝你在StackOverflow上找到它。他们会比别人更快地关闭你的评论。(而且它的谷歌排名会比其他任何东西都好)

看到这个任务的解决方案是以图像的名义(例如“拖动锁”->图像被称为“lock.png”),并且任何不正确的元素都不能被拖动到圆上,这似乎没有那么有效。但这似乎比从图像中输入难以理解的文字更有趣,但我不认为这比验证码更有效。我不知道你的问题的答案,但我几乎完全肯定客户端将始终启用JS。现在已经不可能禁用它了。禁用它的人要么是在测试东西,要么是偏执狂。无论哪种方式,他们都是最低的客户转换率。不要在他们身上浪费时间。+1是关于评论需要javascript的最后一点。禁用JS的人中有%是不值得迎合的少数。他们是极客,转换的可能性极低。您也可以轻松地将时间花在使用IE7的人身上。任何有头脑的人都不会使用它,也不会迎合它。不要把时间浪费在过时的技术上。