搜索引擎爬虫行为控制指南,又称为Robots Meta指令(有时也被称为“Meta标签”),是一组程序语法,用于指导网络爬虫如何抓取或索引网页内容。虽然robots.txt文件可以提供有关如何抓取网站的建议,但Robots Meta指令提供了更为精细和严格的控制,指导爬虫如何处理和索引页面的内容。
Robots Meta指令分为两类:一种属于HTML页面(如meta robots标签),另一种是通过Web服务器作为HTTP头部发送的指令(如x-robots-tag)。meta robots标签和x-robots-tag可以使用相同的参数(例如“noindex”和“nofollow”等Meta提供的抓取或索引指令),不同之处在于这些参数如何传递给网络爬虫。
Meta指令提供了关于如何抓取和索引特定网页内容的工具和解释。如果这些指令被爬虫发现,那么参数将成为规范爬虫行为的强有力建议。然而,与robots.txt文件相同,抓取工具不一定要遵循meta指令,这也就意味着一些恶意的网络爬虫可能会忽略您的指示。
下面是搜索引擎抓取工具中在robots meta指令中使用的一些参数,这些参数不区分大小写。需要注意的是,一些搜索引擎可能只遵循这些参数的部分子集,或者在处理某些指令时可能会有略微不同的处理方式。
参数设置:
Noindex: 告诉搜索引擎不要索引该页面。
Index: 告诉搜索引擎索引该页面,这是默认行为,无需特意添加该标签。
Follow: 即使页面未被索引,也应该追踪页面上的所有链接,并将权限传递给链接的页面。
Nofollow: 告诉网络爬虫不要追踪页面上的所有链接,并且不要传递权限给链接的页面。
Noimageindex: 告诉网络爬虫不要索引页面上的任何图像。
None: 相当于同时使用noindex和nofollow标签。
Noarchive: 搜索引擎不应在SERP(搜索结果页面)中显示指向该页面的缓存链接。
Nocache: 与noarchive相同,但仅适用于Internet Explorer和Firefox浏览器。
Nosnippet: 告诉搜索引擎不要在SERP(搜索结果页面)中显示页面的片段(即Meta描述)。
Noodyp/noydir [已过时]: 阻止搜索引擎使用DMOZ的网页描述作为此页面的SERP(搜索结果页面)片段描述。然而,随着DMOZ在2017年初关闭,该标签已经过时。
Unavailable_after: 搜索引擎不应在特定日期之后索引该页面。
机器人Meta指令主要分为两类:meta robots标签和x-robots-tag。在meta robots标签中可以使用的任何参数也可以在x-robots-tag中指定。
我们将在下面分别讨论meta robots标签和x-robots-tag指令。
▍Meta robots标签
Meta robots标签(俗称“Meta标签”或“robots标签”)是网页HTML代码的一部分,通常以以下形式出现在页面头部:
这是一个标准的设置方式,您也可以使用特定的用户代理名称来替代“robots”以针对特定的搜索引擎。例如,要专门针对Googlebot指定某个指令,您需要使用以下代码:
如果您想在同一页面上使用多个Meta指令,只要它们是相同的“机器人”(用户代理),您可以将多个指令包含在一个meta标签中,只需用逗号分隔即可。
这个标签会告诉机器人不要索引页面上的任何图像、链接,或者当页面出现在SERP(搜索结果页面)上时显示页面的描述片段。
如果您为不同的搜索用户代理使用不同的元机器人标签指令,您需要为每个机器人使用不同的标签。