通过反转字符串来防止 Google 索引 div 的内容

Posted

技术标签:

【中文标题】通过反转字符串来防止 Google 索引 div 的内容【英文标题】:Preventing Google from indexing the contents of a div by reversing the string 【发布时间】:2012-07-03 23:04:44 【问题描述】:

我想防止 Google 将我页面上的一个 <div> 的内容编入索引。当然我可以创建一个图像,但在我的情况下这不是一个真正的选择,因为数据是非常动态的。

所以,我想出了以下解决方案:

假设我有一个字符串:

The quick brown fox jumps over the lazy dog.

    我将字符串反转为:.god yzal eht revo spmuj xof nworb kciuq ehT 我用一点 CSS 来正确显示它:unicode-bidi:bidi-override; direction: rtl;

代码:

<div style="unicode-bidi:bidi-override; direction: rtl;">
  .god yzal eht revo spmuj xof nworb kciuq ehT
</div>

问题:这是否会对我的 SEO 排名产生负面影响,因为 Google 的爬虫会显示:

.god yzal eht revo spmuj xof nworb kciuq ehT

..这是英语垃圾

【问题讨论】:

既然没有人可以肯定地说什么是google page-rank算法,我相信这个问题无法回答。 好吧,这里有一些谷歌人,所以让我们等待,希望看看他们是否会回答这个问题。如果你不问,你永远不会知道。我要把这个问题的链接发给 Matt Cutts :p L0L,Matt Cutts 确实是“内心的家伙”...youtube.com/watch?v=b7W0o65tTIQ 搞砸了写作方向对我来说确实不错。也许一些用于防止部分内容被索引的替代解决方案会更合适。请参阅there 了解替代方案。 【参考方案1】:

我在谷歌论坛上问过,答案是:没有

【讨论】:

【参考方案2】:

我想防止 Google 将我页面上的内容编入索引

那么我认为你不应该把那个内容放在页面上,句号。

根据这篇文章,您可以尝试使用 googleon/googleoff 标签:

Tell Google to Not Index Certain Parts of Your Page

<!--googleoff: index-->
don't index this content
<!--googleon: index-->

然后,我发现这篇文章指出这是不可能的:

http://productforums.google.com/forum/#!topic/webmasters/qrBI_v-N4N0

如何告诉 Google 不要这样做? ==============

你没有!

如果是内容, 如果它是该页面的一部分, 然后它将被抓取,并可能被索引和排名

您不能使用元标记或 html 标记来告诉 Google 忽略、打折、不使用、引用或触摸您的部分内容。

【讨论】:

“那么我认为你不应该把那个内容放在页面上,句号。”好吧,如果您在页面上显示:info@example.com,您会收到很多垃圾邮件。如果您将其显示为:&lt;div style="unicode-bidi:bidi-override; direction: rtl;"&gt;moc.elpmaxe@ofni&lt;/div&gt;,则您根本不会收到任何垃圾邮件! @Mr.Pallazzo 您的问题是关于隐藏内容将如何影响 SEO,而不是关于混淆电子邮件地址。电子邮件地址不是动态的,是吗? googleoff/on 不应该对 Google 网络搜索产生任何影响,而只会对 Google Search Appliance(自托管)产生影响。看到这个answer。 我有一个页面,上面有一个选择题(关于一张图片)。谷歌正在返回图片以查询错误答案,因为文本显示在图片附近。【参考方案3】:

正在更新此线程。虽然 google 仍会抓取和索引,但您可以使用 HTML 中的 data-nosn-p 属性阻止它出现在搜索结果中。可用于&lt;div&gt;&lt;span&gt;&lt;section&gt; 元素。

示例:&lt;p&gt;&lt;span data-nosnippet&gt;Harry Houdini&lt;/span&gt; is undoubtedly the most famous magician ever to live.&lt;/p&gt;

See here

【讨论】:

【参考方案4】:

你的问题有点不清楚。您应该澄清您是否担心对您的排名产生负面或正面影响。

我认为人们无法完全知道使用您的方法是否会对您的 SEO 排名产生负面或正面的影响。您的排名会因使用反向文本而受到处罚吗?也许如果您在 div 中填充关键字或其他垃圾邮件类型的内容。 Google 的爬虫很有可能可以解释您的 CSS 并读取文本,因为它本来就是要被读取的。

另一个可能阻止 Google 抓取特定元素的选项是使用 javascript。例如,将下面的 javascript 放在外部 JS 文件中,并在网页的头部或底部链接到它。

<script>
function jsText() 
  document.getElementById("noindex").innerHTML="The quick brown fox jumps over the lazy dog.";

</script>

然后将以下内容用于要显示隐藏文本的 div。

<div id="noindex">
  <script>
    jsText();
  </script>
</div>

这应该通过 javascript 在 div 中写入文本。 Google 还可以抓取 javascript,因此它仍然可以找到文本并将其编入索引。为了进一步降低 Google 抓取 javascript 的可能性,您也可以排除 robots.txt 中的 javascript 文件。

【讨论】:

答案已过时,Googlebot 运行 JavaScript。【参考方案5】:

我使用服务器端代码向 googlebot 隐藏 div

<?php if(self::isNotGoogleBot()):?>
<div id="noindex"></div>
<?php endif?>
public static function isNotGoogleBot()
    
        $ua = strtolower($_SERVER['HTTP_USER_AGENT']);
        if(strpos($ua,'googlebot') === false && strpos($ua,'mediapartners-google') === false)return true;
        return false;
    

【讨论】:

您能详细介绍一下吗?它仍然有效吗?你没有受到惩罚吗?【参考方案6】:

难道你不能创建一个新的 html 文件来放置文本和元标记

<meta name=”robots” content=”noindex”/>

然后你可以在你的主页上包含带有 iframe 或类似内容的 html。

【讨论】:

以上是关于通过反转字符串来防止 Google 索引 div 的内容的主要内容,如果未能解决你的问题,请参考以下文章

[JavaWeb]_[初级]_[对Html特殊符号进行转义防止XSS攻击和反转义]

python中索引取值可以从后往前取吗

如何通过切片符号 a[::-1] 解释序列的反转

如何通过默认使用已在数据库中设置的值来防止“未定义索引”? [复制]

不反转数字的字符反转[关闭]

防止从任务管理器中杀死进程,反转