“加密”你的email地址,防止爬虫收集打赏

现在在网上要小心,无论是保护好你的用户名和帐号,还是我们的电子邮件地址。在网上有很多爬虫程序专爬我们的电子邮件地址,一量被爬中了,那么你的邮箱里就是一堆又一堆的垃圾邮件,就好像我的abcdefg(at)hotmail.com一样,在7、8年前,每天几千封的垃圾邮件。现在hotmail的垃圾邮件过滤得好一些了,不过也有每天40封左右的垃圾邮件。但是我们在自己的网页上又需要发布自己的email地址。所以我们需要搞乱我们的邮件地址,就像那种非常规的搞乱代码一样。不过,我们还需要能认人读的出来。

一般来说,在网上现在很普遍的做法是——

  • 1)用图片,可以用PHP动态生成那个验证码式的。
  • 2)把@变成at,把点变成dot,如 abcdefg(at)hotmail(dot)com之类的

  • 3)把a变成@,写成@bcdefg@mail.com

不过这些还是能被爬到,用图片的方法不利于用户拷贝粘贴。下面介绍几种方法:

第一种:使用CSS样式

反转字序

span.codedirection { unicode-bidi:bidi-override; direction: rtl; }
<p><span>moc.liamtoh@gfedcba</span></p>

加入些不显示的字符串

p span.hide { display:none; }
<p>foo@bar<span>null</span>.baz</p>

第二种:使用Javascript

最为简单的方法是:

document.write("abcdefg" + "@" + "hotmail" + "." + "com");

或是:

<script type="text/javascript">
<!--
var string1 = "@";
var string2 = "abcdefg";
var string3 = "hotmail.com";
var string4 = string2 + string1 + string3;
document.write("<a href=" + "mail" + "to:" + string2 + string1 + string3 + 
">" + string4 + "");
//-->
</script>

不过更为强大的是使用ROT13加密,这里有一个ROT13的在线工具,或是使用PHP的ROT13的函数str_rot13

<script type=”text/javascript”>
document.write(“<nuers =\"znvygb:unbry@ubgznvy.pbz\">”.replace(/[a-zA-Z]/g,function(c){return String.fromCharCode((c< =”Z”?90:122)>=(c=c.charCodeAt(0)+13)?c:c-26);}));</nuers></script>穷小子的电子邮件

这些方法还是很有效果的。

“加密”你的email地址,防止爬虫收集
文章《“加密”你的email地址,防止爬虫收集》二维码
  • 微信打赏
  • 支付宝打赏
  • 那反过来怎么将自己的邮箱暴露出去尼??manxing20160829@163.com

  • tuwang.org/gmail.com
    对站长来说上面的样子比较有效,具体可见“站长专用的邮箱的综合优化”
    http://www.tuwang.org/html/2011/07/zhuangyong-email.html

  • 😳 很多的东西都是这样的雅

  • 额~~厉害厉害~~
    这么多方法防止自己的邮箱被采集啊~

  • 难怪很多人的邮箱 都是提示 把 XX换成@ 原来如此啊 学习了 转了

  • 博主好厉害,做网页设计的吗?

    • 是做网页设计的,不过没那么强。各方面了解点而已,这些是网上总结的。

  • 博主真的很细心啊,都考虑到我们要复杂了,谢谢博主的分享啊

  • 先收藏着,试试看

  • 我测试过了,和你说的一样,我在这评论是没有问题的,可能新访客有问题吧

    • 暂时先不管了。最近有点事,不忙了再整,谢谢帮忙测试

  • 用图片啊,呵呵。。。

    • 用图片不利于用户拷贝哟

  • QCC

    不错的资源,先收藏了,以后有用的找的地方。谢谢博主分享

  • 不错。收了。

    • 欢迎常来,你的博客我看了,不错!