如何制作HTML <a>标记,以便搜索引擎抓取工具无法访问它们

Cos*_*anu 1 html javascript search-engine hyperlink

我的问题是关于HTML链接(锚标记)和网络搜索引擎.据我所知,网页抓取工具在索引该网页时会访问网页内的所有或大部分链接,对吧?如果我希望某些链接不被搜索引擎抓取工具访问,该怎么办?我不希望这样,因为我计算了点击这些链接的次数 - 这是我的网络应用程序的一个基本功能 - 这将影响计数.我可以用某种方式使用javascript吗?

Mik*_*sen 7

这样做可能有也可能没有一种防万一的技术.但是,为了安全起见,您可以实施以下内容:

禁止robots.txt文件中的这些链接.这需要创建一个名为/robots.txt并添加该行的文件:

Disallow: /YourPage.html
Run Code Online (Sandbox Code Playgroud)

到文件.

您还可以使用不关注链接:

<a href="http://www.example.com/" rel="nofollow">Link text</a>
Run Code Online (Sandbox Code Playgroud)

然而,根据维基百科,大多数(如果不是全部)搜索引擎仍然会实际关注链接,只是不对其进行索引或在排名中使用它.

另一个想法是根本不使用URL,而是使用脚本.就像是:

<a href="javascript:void(0)" onclick="GoSomewhere()">Google Can't Find Me!</a>
<script>
   function GoSomewhere()
   {
      window.location = '/YourPage.html';
   }
</script>
Run Code Online (Sandbox Code Playgroud)

您也可能想重新考虑如何计算命中率.也许不是将命中计数为任何HTTP请求,您可以使用Javascript来注册命中,因为机器人通常不会在页面上执行任何脚本.这就是Google AnalyticsClicky之类的工作方式.

您还可以排除来自包含Googlebot一词的用户代理的任何匹配.

希望这可以帮助!