我们正在谈论您平均每天发送垃圾邮件的机器人 - 我们试图防止使用验证码。
有多少人能够在某种嵌入式浏览器中运行JS?
如果它的数量非常小,那么这样的解决方案如何有用:http://wcaptcha.wozia.pt/sample.php
除了显而易见的可用性/可访问性问题外,这些拖放式解决方案还要求客户端使用JS。甚至没有后备。因此,假设它旨在防止机器人(非人类)不是完全多余的,或者至少是多少机器人在技术上能够尝试这样的事情的程度多余?
如果客户端有JS(这是该解决方案工作的先决条件),那么假设客户端不是机器人是不安全的(在合理的范围内)?
答案 0 :(得分:3)
这不是多余的。如果您只是检测到Javascript,人们仍然可以启动Selenium的实例并假装发表评论。现在这样做的垃圾邮件机器人数量占少数,但随着垃圾邮件战争的发展,你可以打赌垃圾邮件机器人会转向其他方法,比如使用浏览器。如果您检测到Javascript并让它们拖放,那肯定会证明您是一个人。
但我认为这种实现方式并不实用,因为仍然有百分之一的人因为某种原因而关闭JS。我听说这个%是2%或3%,当你谈论成千上万的访客时,这仍然是一个很好的数额。
另一种方法是使用一个noscript选项,要求用户激活Javascript,如果他/她想在博客上发表评论。
答案 1 :(得分:0)
是的,很少有垃圾邮件机器人能够启用JavaScript。
垃圾邮件是一种百分比游戏。只有极少数的垃圾邮件会触发垃圾邮件发送者的任何收入。如果你可以增加垃圾邮件的成本,那么你在经济上是不可行的。在启用JavaScript的浏览器中进行垃圾邮件方式比命令行上的垃圾邮件更昂贵,因此如果您坚持卷曲,您可以一次发送更多垃圾邮件。
是的,这是多余的。
您可以自动执行javascript检查,而不是让用户执行此无意义的任务。它可以像抓取网站域名的脚本一样简单,并将其作为隐藏字段插入每个表单中。这将阻止所有偷渡垃圾邮件发送者。如果您的网站足够引人注目以吸引自定义垃圾邮件发送者,那么无论如何这个解决方案还不够。
对于没有JavaScript的人,只需在帖子失败后向他们展示一张普通的旧图片CAPTCHA。
答案 2 :(得分:0)
更大的问题是可用性恕我直言。验证码总是会降低转换率,而且往往会显着降低。如果您的目标是使用JS作为阻止机器人的手段,我可以告诉您,它已经大大减少了我的机器人流量超过90%。
只需合并一个由JS填充的隐藏字段。如果它没有填写,它们要么是机器人,要么是关闭了JS的那些白痴之一,无论如何你都不想满足。
还包含DOM中可见的隐藏字段。使用CSS将其从屏幕上移开,例如“position:absolute; left:9999px; top:-9999px”。不要使用“display:none;”如果填写此字段,则它们是机器人。
我用这个减少了90%以上的垃圾邮件,所以你应该使用它而不是Captcha类型,除非你是一个大企业。如果您是一家大企业,那么您唯一真正的解决方案就是后端服务器端解决方案。祝你好运在StackOverflow上找到它。他们会比人们回答你的评论更快地结束你的评论。 (它的谷歌排名将超过其他任何东西)