延迟显示电子邮件地址对电子邮件抓取工具有用吗?

Would delayed display of an email address be useful against email scrapers?

假设我需要一个 public 网页来显示我网站用户的电子邮件信息。除了混淆,javascript 这样有帮助吗?

setTimeout(function(){
    document.getElementById(id).innerHTML = "<span>" + username + "@" + hostname +  "</span>";
},50)

这完全取决于垃圾邮件机器人。这 可以 阻止一些垃圾邮件机器人,但它不会阻止专门设计用来绕过这种防御的抓取工具。

这就是军备竞赛的运作方式。

构建一个可以绕过您想到的防御的机器人会非常简单。您可以使用无头浏览器(例如 PhantomJS)来获取页面,评估页面上的所有 JavaScript,等待任意时间(比如 10 秒),然后 then 抓取电子邮件地址的 DOM。