繁体   English   中英

是否可以保护JSON-LD免受电子邮件收集者的侵害?

[英]Is it possible to protect JSON-LD from email harvesters?

我想使用JSON-LD进行搜索引擎优化,但不知道如何阻止自动电子邮件收集器从源中获取地址。

电子邮件架构中,您提供电子邮件地址。 我总是通过使用JS显示它们或其他方法以某种方式模糊电子邮件地址。 这有助于阻止垃圾邮件到目前为止。

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "Person",
  "address": {
    "@type": "PostalAddress",
    "addressLocality": "Seattle",
    "addressRegion": "WA",
    "postalCode": "98052",
    "streetAddress": "20341 Whitworth Institute 405 N. Whitworth"
  },
  "colleague": [
    "http://www.xyz.edu/students/alicejones.html",
    "http://www.xyz.edu/students/bobsmith.html"
  ],
  "email": "mailto:jane-doe@xyz.edu",
  "image": "janedoe.jpg",
  "jobTitle": "Professor",
  "name": "Jane Doe",
  "telephone": "(425) 123-4567",
  "url": "http://www.janedoe.com"
}
</script>

我能想到的唯一方法是使用JS来动态创建上面的内容,我希望收割者在大多数情况下都无法解释,但那很可能会破坏搜索引擎的支持。 这有什么解决方案吗?

除非您能够检测到恶意僵尸程序(并将其作为没有电子邮件地址的版本),否则没有合理的解决方案。 使用结构化数据的主要原因之一是让机器人轻松访问,因此这是设计使然。

您可以尝试使电子邮件地址更难:

  • Schema.org的email属性期望Text为值,因此可以使用混淆(例如, jane-doe at {this domain} )。
    希望:机器人默认不理解你的混淆方法。

  • 如果不需要使用Schema.org的email属性:FOAF的mbox_sha1sum属性需要SHA1散列电子邮件地址。
    希望:机器人不会尝试(或者还没有)找到相应的电子邮件地址。

  • 您可以使用JavaScript添加email属性(例如Google支持它 )。
    希望:机器人不执行JavaScript。

但是,当然,这也使得好机器人变得更难,并且在某些时候你可能想要考虑根本不提供电子邮件地址。

如果您只想向某些消费者提供电子邮件地址,您可以为这些消费者提供包含电子邮件地址的文档,以及所有其他没有的机器人。 但搜索引擎机器人可能不喜欢这种方法 而且你不利于新消费者或你不认识的消费者。

我只是提供未经混淆的电子邮件地址,并为每个人, 使访问者(人类和机器人)的生活更容易 垃圾邮件应该是你的问题,而不是他们的问题; 这是一个可以处理的问题。

JSON-LD可以为机器人提供数据,包括可以轻易欺骗其他机器人身份的电子邮件收集器。 我建议将电子邮件地址从JSON-LD中删除,它不会伤害搜索引擎优化,这些电子邮件的所有者会爱你。 否则你会 - 他们的电子邮箱成为垃圾邮件的固定目标

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM