通过隐藏电子邮件地址(显示:无)打击垃圾邮件机器人



如果我将其设置为display: none,是否可以防止垃圾邮件机器人在我的电子邮件地址上爬行?如果你愿意的话,我有一个小游戏的想法,用户点击电子邮件的链接,然后它会显示一两个"你确定你不是机器人吗"之类的问题。一旦回答了这些问题,它就会显示真实的链接。

问题是,我假设机器人可以看到链接,因为它显然存在于HTML中,即使它不可见。有办法绕过这个吗?

此外,我希望这些问题逐渐消失,但据我所知,CSS3转换不支持显示或可见性属性。我会求助于jQuery吗?如果是这样的话,有人能告诉我在从display: none切换到display: block时,元素中的衰落的替代方案吗?

否,display: none无法工作。

解决这一问题的唯一真正方法是不在HTML中使用它。例如,将其制作成图像,或者使用JavaScript将其解扰为单独的元素,这些元素可以完全(单独)放置,以供浏览器的人类查看器正确查看。

请注意,如果你走图像路线,垃圾邮件机器人当然可以读取图像,所以也许你应该用一些随机图像来模糊它,比如好的旧captchas。

关于CSS3不支持visibility/display,你是对的,但无论你决定如何显示你的电子邮件地址,你都可以使用opacity属性来淡化的内容。CSS3转换完全支持opacity

大多数爬网程序分析页面的标记,而不是视觉呈现版本。使用CCD_ 8效果甚微。

此外,您不需要使用jQuery来获得渐变效果。设置不透明度,然后使用以下方法将很好地工作:

-webkit-transition: opacity 0.2s linear;
        transition: opacity 0.2s linear;

您可能想要实现一个联系人表单,而不是显示电子邮件地址。您可以使用captcha或一些蜜罐方法来保护该表单。此外,您可以使用Javascript呈现表单,因为许多机器人不会运行Javascript(我希望如此)。

最新更新