Last Updated:

福州SEO实战0801咨询表单太多了,用HoneyPot

TDRFORCE 表单HoneyPot

网站刚发布,就吸引了很多的咨询表单!一听起来,好像是好事!

如上图一样,网站刚上线就有咨询,认真看一下,发现是垃圾咨询。

这都算好了,一天才几个。小篇华诺技术Peter曾经看到一位老板的官网,因在行界做了很长时间,网站挺有名气的。基本留言或咨询的,每20秒就有一位。一天都好几千上万封。

这种叫机器人自动填写表单,在福州SEO的Peter看来,这是非常正常的现象的。毕竟垃圾邮件或广告邮件没有什么人看了,但网站的留言表单,一般公司都会安排人员看。发垃圾邮件是明显违法,但在网站的留言或咨询表单,发广告,好像没有明确说违法处罚问题,可以说是灰色地带。甚至一些病毒或木马就是在这些网站的留言或咨询表单,吸引点击留言链接;间接入侵公司电脑系统。

今天,福州SEO技术的Peter就来讲讲,最常见的HoneyPot防垃圾或防机器人的手段。这里声明一下,实战数据中,并不能拦截100%的所有机器人;拦截一般的或大部分的,是可以的。HoneyPot的原理如下图:就是想办法让真人看不到 ;而机器人认为要填写数据。

这种防机器人技术, HoneyPot有如下优点1:

优点1:无需调用后端或第三方API程序,可以节省不少时间。像世界著名的Google reCAPTCHA 或其它的,就需要API及后台程序的调用和判断,无论给前端顾客还是后端的服务器都会造成一定的影响。机器人请求数时,基本还可以接受,但并发量及每秒请求量增多时,有可能导致网站宕机。

优点2:没有采用IP等级分析或黑白名单或评分等,也没有接入第三方IP识别数据库。自然而然,就比较网站宕机的发生。

优化3:兼容全静态HTML网站。

这种使用HoneyPot防机器人技术 ,也有不足之处:

缺点1: 还是得使用代码。增加部分代码,同时对Form及CSS及JS还要一定熟悉。

缺点2:有些浏览器或者有些客户端,不一定能支持。特别是版本比较旧的。

缺点3: 如果机器人有识别Require(必需填)的字段的话,且仅填写必需填的字段的情况下,是能成功绕过这种HoneyPot的。

现在,开启全网最完整的一步步的教程吧:

1.  编写个自定义的CSS,为什么要使用CSS呢?就是让肉眼在网页上看不到这个特别的Input字段。案例代码如下:位置放在</head>前面。

<style>
.userCode {
    position: absolute;
    left: -5000px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
  }
</style>
 
2. 在Form表单中,Submit字段前,插入如下,字段代码(兼容Html5 和Bootstrap)
 <!-- HoneyPot Field -->
<div class="form-group userCode" aria-hidden="true">
           <label class="control-label" for="usercode">&nbsp;</label>
           <input id="usercode" type="text" name="usercode" tabindex="-1" value="" autocomplete="off" />
            </div>
同时,务必在Form 字段中,加入这个属性:
 onsubmit="submitHandler()"
3. 较为关键的一步,就是验证代码,如果机器人填写了HoneyPot字段,就禁止提交;如果非机器或真人,无人填写HoneyPot,就放行提交。(实战经验上,能拦截大部分机器人;对一些特别高级机器人或机器人不填写HoneyPot字段,就会无效。)
3.1 列出所有Form字段的Name值,区分大小写,前后不得留空格。
3.2 按根据Form字段,写代码,本文案例是:
<script>
function submitHandler() {
  var zf_referrer_name = document.getElementById("zf_referrer_name").value;
  var zf_redirect_url = document.getElementById("zf_redirect_url").value;
  var zc_gad = document.getElementById("zc_gad").value;
  var utm_source = document.getElementById("utm_source").value;
  var utm_medium = document.getElementById("utm_medium").value;
  var utm_campaign = document.getElementById("utm_campaign").value;
  var utm_term = document.getElementById("utm_term").value;
  var utm_content = document.getElementById("utm_content").value;
  var gclid = document.getElementById("gclid").value;
  var SingleLine = document.getElementById("SingleLine").value;
  var Email = document.getElementById("Email").value;
  var SingleLine1 = document.getElementById("SingleLine1").value;
  var MultiLine = document.getElementById("MultiLine").value;
  var usercode = document.getElementById("usercode").value;

  if (usercode.length) {
    alert("Not human");
    return false;
  }
  alert("sucess");
}
    </script>

最后一步,记得保存,更新上传服务器或网站上。原创作者福州华诺技术Peter,希望通过用HoneyPot技术拦截过多的垃圾咨询表单, 能提升外贸询盘的质量,节省处理不必要的垃圾询盘时间。如需转载,需全文转载。