robots.txt 是如何工作的?原理是什么?

作者:武汉建站公司 来源:武汉网络公司 2019-06-25 15:35

相信大家已经知道什么是robots.txt 文件了吧!简单来说这个一个txt文件,也被称作协议文件,主要是引导蜘蛛哪些可以文件可以爬取些文件不可以爬取,举个最简单的例子文章是否可以被爬取 ,答案是肯定的,而哪些不可以被爬取呢?比如关于你的网站后台的地址是不可以被爬取的,该文件作为一个用于网站与爬虫和其他机器人进行交流的一个媒介。当然使用协议文件是绝对必要的: 你可以使用 HTML 或者文字编辑器创建一个 robots.txt 文件,然后把包括禁止搜索引擎爬虫爬取的文件位置的代码写进去放到网站根目录即可。

  robots.txt 是如何工作的?原理是什么?

  原理其实很简单,当一个网站的所有者想给网络爬虫一些指导或者限制的时候,他们会把他们的 robots.txt 文件放在他们网站的根目录中。遵循这个协议的蜘蛛机器人将在从网站获取任何其他文件之前获取和读取该文件,哪些文件可以抓,哪些文件不可以抓。就像一本工具书,你就是那个机器人,你得遵循工具书上的指导,才能实践相关的东西,那本工具书就是robots文件。如果网站没有 robots.txt,爬虫会认为网站管理员不想给出任何具体的指示,并且会继续爬行整个网站。Robots.txt一般由两部分组成:User-Agent和指令:

  User-Agent

  User-agent 就是蜘蛛爬行器的名称,也被称作用户代理。注意User-agent 行总是位于每组指令中的指令行之前。一个基本的 robots.txt 文件类似是这样的:

  User-agent: Googlebot

  Disallow: /

  而Disallow: /指令呢,就是指导用户代理,例如Googlebot,baiduSpyder等,远离整个服务器——它不会抓取网站上的任何页面。 如果要向多个机器人发出指令,可以为每个机器人创建一组用户代理并禁止使用指令。

  User-agent: Googlebot

  Disallow: /

  User-agent: Baiduspider

  Disallow: /

  常见搜索引擎的蜘蛛名称如下:

robots.txt 是如何工作的?原理是什么?

  Disallow指令

  Robots.txt 的第二重要的指令就是"Disallow"行。这个指令告诉 spider 不允许爬行哪些页面以及文件夹。每组指令可以有多个禁止行,但只有一个用户代理。还有就是你如果想指定特定的页面、目录、子目录和文件类型不被爬取,你可以列出相应的文件夹名称或者网页名称。但是注意只能使用该网页的相对路径,例如:

  User-agent: *

  Disallow: /folder1/

  Disallow: /folder2/

  Disallow: /directory/page.html

  你也可以使用 robots.txt 来阻止机器人通过在不允许的行中使用通配符和文件类型来阻止机器人爬行,一般常用的通配符是*和$,*表示所有的意思,$表示以..为结尾的意思,例如:

  User-agent: *

  Disallow: /*.ppt

  Disallow: /images/*.jpg

  Disallow: /duplicatecontent/copy*.html

  以Disallow: /duplicatecontent/copy*.html这条指令为例,下列的路径:

  /duplicatecontent/copy.html

  /duplicatecontent/copy1.html

  /duplicatecontent/copy2.html

  /duplicatecontent/copy.html?id=1234

  只有第一二三条是无法被爬取的,第四条不满足条件,所以还是可以被爬取,如果copy*.html改为copy*.html$,那么四条都无法被爬取。

 

  Allow

  当然Allow这个指令也很重要,它可以说是作为dissallow的补充,因为有时候你可能想要排除目录中的每个文件,除了某一个文件或者路径,这个时候就能用到它了。你可以为除了你想要的文件以外的每个文件写一个不允许的行,你可以使用 Allow 指令。它的工作原理和dissallow的差不多,通配符和匹配模式规则在 Allow 指令中的作用与在 Disallow 中的作用也是相同的。:

  User-agent: *

  Allow: /folder/subfolder/file.html

  Disallow: /folder/subfolder/

  其他指令

  还有一些国外搜索引擎支持的另一个指令是crawl-delay。它指定了一个表示数秒的数值——爬行延迟应该看起来像crawl-delay: 15。雅虎、必应和 Yandex 都有不同的使用方式。Google和 Bing 使用这个值作为蜘蛛爬行操作之间的一个等待时间,而 Yandex 将用它作为访问站点的等待时间。在国内呢,百度,360等搜索引擎目前使用不多。如果你有一个很大的网站,你可能不想使用这个指令,因为它可以严重限制页面的爬行次数。但是,如果你从这些搜索引擎中得到的流量很少甚至没有,你可以使用爬行延迟来节省带宽。当然高级点的,你还可以将 crawl-delay设置为特定的用户代理程序。例如,你可能会发现你的网站经常被某搜索引擎或者其他爬虫优化工具抓取过多时,如果你觉得他们在对你网站有伤害时,你也可以屏蔽他们,以便节省自己的网络宽带。

  最后,你也可以通过在文件中添加 Sitemap来告诉搜索引擎在哪里找到 Sitemap。这个指令独立于用户代理,所以蜘蛛机器人能够解释它,但最好把它放在最后。为你拥有的每一个站点地图创建一个新的站点地图行,包括你的图片和视频站点地图或者你的站点地图索引文件,都是很有必要的。如果你宁愿你的站点地图位置不想让所有人都可以看到,你就可以选择忽略这一点了,哈哈,那就直接向搜索引擎提交站点地图吧。


本文地址:网站建设教程频道 https://www.dayku.cn/jiaocheng/3039.html,武汉易企推建站公司提供一站式网站制作开发服务:武汉网站建设、网站开发、高端网站设计制作、手机网站开发,微信小程序开发等建站服务,制作周期短,价格实惠,效果满意;以及全网营销、网站优化服务、百科词条创建修改、新媒体引流、公司负面公关处理等


相关文章相关文章
本地企业
              可提供上门服务

便捷

本地企业可提供上门服务

提供适合、专业可行方案

周到

提供适合、专业可行方案

5-10分钟售后响应机制<

贴心

5-10分钟售后响应机制

按效果收费,无效果不收费

放心

按效果收费,无效果不收费

行业高标准,效果稳定可靠

稳定

行业高标准,效果稳定可靠

1-3个月排名上百度首页

快速

1-3个月排名上百度首页

武汉易企推建站公司;公司地址:武汉市武昌区静安路6号5.5创意产业园4楼;公司官网:https://www.dayku.cn

服务热线:18120550335 / 027-88866235 欢迎来电咨询; 联系QQ:1193073039

Copyrigh@2017-2030 版权所有:武汉易企推网络科技有限公司 备案号:鄂ICP备17012199号