`
wangminshe89
  • 浏览: 661810 次
文章分类
社区版块
存档分类
最新评论

Robots.txt指南

 
阅读更多
Robots.txt指南


当搜索引擎访问一个网站时,它首先会检查该网站的根域下是否有一个叫做robots.txt的纯文本文件。Robots.txt文件用于限定搜索引擎对其网站的访问范围,即告诉搜索引擎网站中哪些文件是允许它进行检索(下载)的。这就是大家在网络上常看到的“拒绝Robots访问标准”(Robots Exclusion Standard)。下面我们简称RES。 Robots.txt文件的格式:Robots.txt文件的格式比较特殊,它由记录组成。这些记录通过空行分开。其中每条记录均由两个域组成:
  1) 一个User-Agent(用户代理)字符串行;
  2) 若干Disallow字符串行。
  记录格式为:<Field> ":" <value>
  下面我们分别对这两个域做进一步说明。
User-agent(用户代理):
  User-agent行(用户代理行) 用于指定搜索引擎robot的名字,以Google的检索程序Googlebot为例,有:User-agent: Googlebot
  一个robots.txt中至少要有一条User-agent记录。如果有多条User-agent记录,则说明有多个robot会受到RES标准的限制。当然了,如果要指定所有的robot,只需用一个通配符"*"就搞定了,即:User-agent: *
Disallow(拒绝访问声明):
  在Robots.txt文件中,每条记录的第二个域是Disallow:指令行。这些Disallow行声明了该网站中不希望被访问的文件和(或)目录。例如"Disallow: email.htm"对文件的访问进行了声明,禁止Spiders下载网站上的email.htm文件。而"Disallow: /cgi-bin/"则对cgi-bin目录的访问进行了声明,拒绝Spiders(蜘蛛)进入该目录及其子目录。Disallow声明行还具有通配符功能。例如上例中"Disallow: /cgi-bin/"声明了拒绝搜索引擎对cgi-bin目录及其子目录的访问,而"Disallow:/bob"则拒绝搜索引擎对/bob.html和/bob/indes.html的访问(即无论是名为bob的文件还是名为bob的目录下的文件都不允许搜索引擎访问)。Disallow记录如果留空,则说明该网站的所有部分都向搜索引擎开放。
空格 & 注释
  在robots.txt文件中,凡以"#"开头的行,均被视为注解内容,这和UNIX中的惯例是一样的。但大家需要注意两个问题:
  1) RES标准允许将注解内容放在指示行的末尾,但这种格式并不是所有的Spiders都能够支持。譬如,并不是所有的Spiders都能够正确理解"Disallow: bob #comment"这样一条指令。有的Spiders就会误解为Disallow的是"bob#comment"。最好的办法是使注解自成一行。
  2) RES标准允许在一个指令行的开头存在空格,象"Disallow: bob #comment",但我们也并不建议大家这么做。
Robots.txt文件的创建:
  需要注意的是,应当在UNIX命令行终端模式下创建Robots.txt纯文本文件。好的文本编辑器一般都能够提供UNIX模式功能,或者你的FTP客户端软件也“应该”能够替你转换过来。如果你试图用一个没有提供文本编辑模式的HTML编辑器来生成你的robots.txt纯文本文件,那你可就是瞎子打蚊子——白费力气了。
对RES标准的扩展:
  尽管已经提出了一些扩展标准,如Allow行或Robot版本控制(例如应该忽略大小写和版本号),但尚未得到RES工作组的正式批准认可。
附录I. Robots.txt用法举例:
  使用通配符"*",可设置对所有robot的访问权限。
  User-agent: *
  Disallow:
  表明:允许所有搜索引擎访问网站下的所有内容。
  User-agent: *
  Disallow: /
  表明:禁止所有搜索引擎对网站下所有网页的访问。
  User-agent: *
  Disallow: /cgi-bin/(注意第一个Disallow要放一行)
  Disallow: /images/
  表明:禁止所有搜索引擎进入网站的cgi-bin和images目录及其下所有子目录。需要注意的是对每一个目录必须分开声明。
  User-agent: Roverdog
  Disallow: /
  表明:禁止Roverdog访问网站上的任何文件。
  User-agent: Googlebot
Disallow: cheese.htm
  表明:禁止Google的Googlebot访问其网站下的cheese.htm文件。
  上面介绍了一些简单的设置,对于比较复杂的设置,可参看一些大型站点如CNN或Looksmart的robots.txt文件(www.cnn.com/robots.txt, www.looksmart.com/robots.txt)
附录II. 相关robots.txt文章参考:
  1. Robots.txt常见问题解析
  2. Robots Meta Tag的使用
  3. Robots.txt检测程序
分享到:
评论

相关推荐

    爬虫入门,基础知识总结

    我会首先介绍 robots.txt 文档,即 robots 协议,让大家合理、合法的进行网络爬虫。 ... 3 爬虫框架 通过上面的基本爬虫的简单学习,我们发现使用原始的爬虫存在着低效率、代码量大的缺点,一般只能用作小型项目的...

    制作一套网络爬虫程序设计

    在设计爬虫时,还需考虑遵守robots.txt规则、设置合理的请求间隔以及处理异常和重试机制。此外,对于大型网站,可能需要实现多线程或异步爬取以提高效率。最终,一个完善的C#网络爬虫应能稳定、高效地爬取目标数据。

    cards-jekyll-theme:响应式列卡

    robots.txt ads.txt Google Adsense支持() Cookie通知 您可以从此处分叉并使用此主题,随时删除页脚功劳。 但是,如果您下载了该主题,并且希望在不使用fork的情况下删除页脚信用,则可以我,或者直接向我的...

    taskbuster-boilerplate

    robots.txt和humans.txt已配置 此外,您可以在逐步学习如何创建此样板。 在这里,您可以逐步学习TaskBuster的工作方式,如果愿意,甚至可以自己完成! 要开始使用样板,请查看要求和快速入门指南! 要求 使用此...

    taskbuster-boilerplate:Django 教程

    一些 TaskBuster Django 项目样板功能是: 用于开发、测试和生产的不同虚拟环境支持不同语言的国际化和本地化项目结构HTML5 样板模板继承功能测试配置了 robots.txt 和 human.txt 此外,您可以在逐步了解如何创建此...

    generator-fixate-pw:Yeoman发生器,用于processwire制造商固定样式指南

    robots.txt 安装和并配备全面的任务清单 javascript和Sass编译 资产最小化和优化 资产修订/清除缓存 带时间戳的本地和生产数据库转储 rsync部署 自动重装 一个tmuxinator配置,只需一个命令即可轻松运行您的项目 ...

    Python 开源项目之「自学编程之路」.zip

    遵守规则: 为避免对网站造成过大负担或触发反爬虫机制,爬虫需要遵守网站的robots.txt协议,限制访问频率和深度,并模拟人类访问行为,如设置User-Agent。 反爬虫应对: 由于爬虫的存在,一些网站采取了反爬虫措施...

    prototype-seed:Gulp Prototype Seed with Jade、BrowserSync、HTML Boilerplate、Grid、CSS Autoprefixer、KSS Styleguide 为 Heroku 部署做好准备

    在 robots.txt 中更改此内容 在 server.js 文件中启用基本 HTTP-Auth。 这仅在从 express 提供站点时启用。 就像在heroku上托管一样。 将原型部署到 Heroku 确保您已安装 。 首先,创建您的应用程序: heroku ...

    gatsby-v2-tutorial-starter:Gatsby V2 Starter-分步教程产品

    产品特点盖茨比v2 造型情感代码语法高亮标签搜索引擎优化网站地图生成适用于Google Rich代码段的Schema.org JSON-LD Twitter标签适用于Facebook / Google + / PinterestOpenGraph标签robots.txt Typography.js 字体...

    酷睿股票私募网站管理系统 V2011.rar

    独有利于Alexa收录的info.txt文件和搜索引擎蜘蛛爬行文件Robots.txt 模板程序分离,网站频道、栏目、内容页META关键词、网站META网页描述均为调用标签,利于网站的收录量并大大缩短了页面收录的时间更便于网站的...

    谷歌搜索引擎优化初学者指南

    更加有效地使用robots.txt文件 ---------------------------------------------------- 19 谨慎使用rel="no follow" ------------------------------------------------------------ 20 用正确的手段推广您的网站 --...

    RPRP 机械手的任务空间控制:RPRP 机械手的正向和逆向运动学具有任务空间控制以跟踪轨迹。-matlab开发

    robots_project.m 主要的GUI源代码robots_project.fig 通过指南执行的图形文件forward_kin.m : 计算不同关节和连杆的齐次变换矩阵inverse_kin.m : 基于数值方法的逆运动学My_fun.m : fmincon 用于关节变量数值解的...

    酷睿股票私募网站管理系统 V2011

    独有利于Alexa收录的info.txt文件和搜索引擎蜘蛛爬行文件Robots.txt 模板程序分离,网站频道、栏目、内容页META关键词、网站META网页描述均为调用标签,利于网站的收录量并大大缩短了页面收录的时间更便于网站的自动...

    酷睿股票私募网站管理系统V2010 SP3

    独有利于Alexa收录的info.txt文件和搜索引擎蜘蛛爬行文件Robots.txt 模板程序分离,网站频道、栏目、内容页META关键词、网站META网页描述均为调用标签,利于网站的收录量并大大缩短了页面收录的时间更便于网站的自动...

    酷睿股票私募网站管理系统 V2010 SP2

    独有利于Alexa收录的info.txt文件和搜索引擎蜘蛛爬行文件Robots.txt 模板程序分离,网站频道、栏目、内容页META关键词、网站META网页描述均为调用标签,利于网站的收录量并大大缩短了页面收录的时间更便于网站的自动...

Global site tag (gtag.js) - Google Analytics