爬虫的 SEO – Robots.txt 和 Nofollow 标签
Crawler 或 Spider 是一段脚本,用于收集 Internet 上所有可用网页的信息。 爬虫的基本目的是收集页面上的信息并将其编入数据库中以供以后检索。 但是有许多类型的爬虫用于多种用途,无论好坏。 搜索引擎提供商为它们起一个易于理解的名称,例如 Googlebot 或 Bingbot。 例如,谷歌有很多爬虫,如下所示:
- Googlebot – 索引内容以显示在网络搜索结果中
- Googlebot-Image- 索引图像以显示在图像搜索结果中
- Googlebot-News – 收集新闻提要以显示在新闻搜索结果中
- Googlebot-Video – 抓取网络中的视频并显示在视频搜索结果中
- Googlebot-Mobile – 移动搜索爬虫
- Mediapartners-Google – Google AdSense 的抓取工具
这些爬虫浏览网络并索引搜索引擎数据库中的新内容。 当用户搜索查询时,会根据复杂的算法从数据库中检索内容。
另一方面,许多机器人被用来收集信息以进行黑客攻击。
如何认识爬虫?
搜索引擎会提供网站管理员工具或 Search Console 帐户来查看和控制您网站上的爬虫活动(如果它会影响性能)。 除此之外,所有爬虫条目都可以从站点的服务器日志中获取,以进行故障排除和分析。 例如,如果您看到一个坏机器人在爬取您的站点,那么您可以阻止该特定机器人以保护站点的内容。
如果爬虫影响了网站上的用户活动,那么您可以控制从网站管理员工具帐户爬取的速率和时间,这样可以在不影响用户的情况下在非高峰时间进行爬取。
网站所有者通过使用 robots 元标记或通过根目录中的 robots.txt 文件在标题部分添加适当的属性来决定爬虫是否应该跟踪网页。 robots.txt 文件中的用户代理属性用于指定机器人的名称,以允许或拒绝对特定页面、目录或整个站点的访问。 例如,如果您不希望 Google 爬虫扫描您的网站,请使用以下代码拒绝访问:
用户代理:Googlebot
不允许: /
通过 Robots.txt 和 Nofollow 标签通知爬虫
Crawler 或 Spider 是一段脚本,用于收集网络中所有可用网页的信息。 搜索引擎提供商为它们起一个易于理解的名称,例如 Googlebot 或 Bingbot。 重要的部分是,您作为网站的所有者需要告诉这些爬虫哪些 URL 链接要编入索引,以及搜索引擎要考虑哪些来自您网站的引用链接。
什么是 Robots.txt?
“robots.txt”是每个网站根目录中的一个文本文件,用于通知搜索引擎该网页是否允许被抓取。 这是一个可选文件,仅当您必须指示爬虫并且大多数内容管理系统自动生成 robots.txt 文件时才使用。 您只需在浏览器地址栏中输入“www.yoursitename.com/robots.txt”即可查看您网站的robots.txt文件。
您网站的某些页面可能包含机密信息,如果您不阻止搜索引擎使用 robots.txt 文件停止抓取这些页面,那么所有这些机密详细信息都将在搜索结果中向公众显示。 除了对搜索引擎隐藏页面外,robots.txt 文件还用于特定搜索机器人在网站上的确切预期操作。
例如,您可以停止 Googlebot 仅访问您网站上的特定目录,并停止/提供对 Bingbot 的完全访问权限。
使用 Robots.txt 隐藏敏感信息就足够了吗?
由于以下原因,仅使用 robots.txt 向搜索引擎隐藏敏感内容绝对不是一种高度安全的方法:
- 由于任何人都可以在浏览器中看到 robots.txt 文件,一些好奇的用户可能会尝试分析目录并判断您隐藏的 URL。
- 一些搜索引擎机器人不遵循 robots.txt 排除并继续为您的机密页面编制索引。
- 搜索引擎仍会在搜索结果中显示被阻止的 URL。
详细了解 robots.txt 文件。
使用 .htaccess
超文本访问或 .htaccess 是最受支持的配置文件,用于控制 Web 服务器的特定目录。 尽管服务器有自己的全局配置,但这用于控制服务器上单个站点的行为。 这是通常用于控制访问站点任何特定部分所需的授权的文件。
例如,您可以阻止特定 IP 地址或域访问您的站点。 您还可以设置重定向规则以在访问特定页面时通知搜索引擎。
了解链接的 rel=”nofollow”
谷歌引入了基于外部链接评估页面的 PageRank 机制。 后来,大多数其他搜索引擎紧随其后,改变了搜索引擎优化的整个游戏。 大多数网站管理员和搜索引擎优化公司开始建立不自然的链接只是为了提高网站在搜索结果中的排名。 为了保证外部链接的质量,Google 再次引入了 rel=”nofollow” HTML 链接属性来告诉搜索引擎爬虫在评估搜索排名时是否考虑该链接。
下面是如何使用“nofollow”属性的语法:
我在哪里可以使用 Nofollow?
Rel=”nofollow” 是一个 HTML 链接属性,用于锚标签中,用于通知搜索引擎爬虫在评估搜索排名时不要考虑链接。 这种方法最初是由 Google 发现的,后来被 Bing 等其他搜索引擎采用为标准。
谷歌的搜索算法很大程度上依赖于页面的外部链接权重,因此导致网站管理员向其他网站发送垃圾邮件,以提高他们网站的搜索排名。 垃圾邮件机器人的主要目标之一是博客评论,因为大多数网站所有者在早期自动批准评论,因此很容易留下带有链接的评论。 为了克服这种垃圾评论,谷歌引入了一种为任何单个超链接添加“rel=”nofollow”标签的机制,以避免在计算搜索结果的 PageRank 时考虑该链接。
句法
在 HTML 锚标记中使用 Nofollow 属性,如下所示:
<a href= "http://example.com" rel="nofollow"> This is a nofollow link, don’t spam </a>
nofollow 属性用于通知搜索引擎不要跟踪页面中的所有链接,而 rel=”nofollow” 用于特定链接,从而为网站管理员提供更多控制。
Nofollow可以在很多情况下使用,这里我们是一些重要的情况:
- 这对于避免在博客的评论部分输入垃圾网站链接非常有用,因为博客评论部分很容易受到如下所示的垃圾评论的攻击。
- 通过对评论中的链接使用 No-follow in rel 属性,可以确认您没有将页面的声誉提供给垃圾网站。
- Nofollow 在论坛、留言簿和留言板中也很有用。 大多数博客和论坛提供商默认为用户评论添加 nofollow,以避免手动将其单独添加到每个评论中。
- 您还可以使用评论审核,例如输入验证码和使用社交网络登录进行评论。
- 当您引用站点中的链接但对将出站链接声誉传递给它不感兴趣时,Nofollow 也很有用。
- 如果您想对您网站的任何页面上的所有链接进行 nofollow,请在您的 robots 元标记中使用“nofollow”,该标记位于该页面 HTML 的 标记内,如下所示:
限制
- 所有搜索引擎都不会以相同的方式解释此属性。
- 是否遵守此属性取决于爬虫。
- 如果搜索引擎通过链接到 nofollow 页面的不同站点或页面找到它们,则仍将遵循 Nofollow 链接。
机器人元标签
机器人元标记是在网页的
部分中使用的 HTML 标记,用于通知搜索引擎爬虫是否要对页面进行索引以及是否要跟踪页面上的链接。 名称 robots 表示这些标签用于引导机器人或爬虫,而不是用于人类用户。机器人元标签具有以下两个属性:
- “名称”应始终被称为“机器人”和
- 根据需要,“内容”应具有以下四个参数之一:
- 索引 – 允许索引
- Noindex – 不允许索引
- 关注 – 允许关注该页面中的链接
- Nofollow – 不允许关注该页面中的链接
句法
机器人元标签的使用方式如下:
<HTML> <HEAD> <TITLE> Page Title </TITLE> <META NAME="ROBOTS" CONTENT="NOINDEX, FOLLOW"> <META NAME="ROBOTS" CONTENT="INDEX, NOFOLLOW"> <META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW"> </HEAD>
当机器人元标签与 robots.txt 文件结合使用时,爬虫优先于 robots.txt 文件。 因此,允许 robots.txt 文件中的目录并在元标记中使用 noindex 来限制同一目录中的页面对爬虫没有影响。
- 尽管所有搜索引擎机器人都遵循机器人元标签中定义的条件,但是否服从由爬虫决定。
- 通常爬网的恶意软件不会跟随这些标签,因此机器人元标签不是向搜索引擎隐藏机密信息的方法,而是使用服务器端密码来限制访问。
- 当页面有许多内部或外部链接时,Nofollow 属性没有实际值。 搜索引擎会从其他网站或其他页面找到页面链接,并且仍然会关注 nofollow 页面上的内容。