如何为用户显示电子邮件地址但隐藏机器人? 使用PHP,Javascript还是Jquery有一种简单的方法吗?

使用PHP,Javascript或Jquery有一种优雅,简单/简单的方法吗?

您可以使用PHP imagestring()函数来创建图像。

 

有很多方法可以做到这一点。 我们通过python / javascript得到了运气混淆的来源。 另一个更简单的最爱是CSS unicode-bidi技术:

 div.contact { unicode-bidi:bidi-override; direction: rtl; } 
moc.rab@oof

打印出来:

foo@bar.com

您可能需要查看reCAPTCHA Mailhide 。 它应该很容易从PHP使用。

永远不要将电子邮件地址写为网页上的文字,绝对不要!

和浏览器机器人肯定已启用JS -_-

使用最棘手的HTML实体和urlencode进行混淆,用PHP实现: http : //hcard.geekhood.net/encode/

资料来源: http : //code.google.com/p/hcardvalidator/source/browse/trunk/encode/index.php

我使用的另一种方法是:

   

值得注意的是,这两种技术都为用户提供了完全可访问的可点击链接。

您可以尝试将name@example.com更改为:“name at example dot com”。

但是,机器人可以轻松解释这一点。

否则,如果您真的有动力,可以显示电子邮件地址的动态图像。

这不是一个完美的解决方案,但Enkoder( http://hivelogic.com/enkoder )对此非常有用。 它使用Javascript来混淆地址。

好。 所以过了一段时间,我发现这篇关于如何轻松完成这篇文章的博客文章。 http://techblog.tilllate.com/2008/07/20/ten-methods-to-obfuscate-e-mail-addresses-compared/它对垃圾邮件接收有多大影响..

我想这可能是上面给出的信息的补充..干杯!

这会有效吗?

使用这样的东西

 myaddress@mydomain.com 

这不会作为一个链接,但仍然可以被人眼在页面上识别,并且可能不被机器人解析。 你没看过来。 您可以将该字符串插入void并将其绑定到通过解析内容来组成地址的函数。

只是一个快速思考……

这很难做到。 除非您使用图像,否则浏览器呈现为人类可读的任何内容都可以由机器人呈现为人类可读。 因此,即使在HTML源中以某种方式加扰电子邮件,然后使用javascript函数在页面呈现上动态地解扰,这也将被机器人击败,该机器人也完全呈现DOM。

直到最近我用上述方法取得了很好的成功,并没有看到任何垃圾邮件。 然而,最近我注意到地址似乎已经被接收了。 所以我只能假设电子邮件拖网渔船正在进行完整的DOM渲染。

总而言之 – 图像可能是最好的(尽管即使不是100%)

这是一个简单的jquery解决这个问题的方法: