禁止搜索引擎收录的方法(robots.txt)
一、什么是robots.txt文件?
搜索引擎通过一种程序robot(又称spider),自己主动訪问互联网上的网页并获取网页信息。您能够在您的站点中创建一个纯文本文件robots.txt,在这个文件里声明该站点中不想被robot訪问的部分,这样,该站点的部分或所有内容就能够不被搜索引擎收录了,或者指定搜索引擎仅仅收录指定的内容。
二、robots.txt文件放在哪里?
robots.txt文件应该放在站点根文件夹下。举例来说,当robots訪问一个站点(比方http://www.abc.com)时,首先会检查该站点中是否存在http://www.abc.com/robots.txt这个文件,假设机器人找到这个文件,它就会依据这个文件的内容,来确定它訪问权限的范围。
站点 URL 对应的 robots.txt的 URL
http://www.w3.org/ http://www.w3.org/robots.txt
http://www.w3.org:80/ http://www.w3.org:80/robots.txt
http://www.w3.org:1234/ http://www.w3.org:1234/robots.txt
http://w3.org/ http://w3.org/robots.txt
三、robots.txt文件的格式
"robots.txt"文件包括一条或很多其它的记录,这些记录通过空行分开(以CR,CR/NL, or NL作为结束符),每一条记录的格式例如以下所看到的:":"。
在该文件里能够使用#进行注解,具体用法和UNIX中的惯例一样。该文件里的记录通常以一行或多行User-agent開始,后面加上若干Disallow行,具体情况例如以下:
User-agent:
该项的值用于描写叙述搜索引擎robot的名字,在"robots.txt"文件里,假设有多条User-agent记录说明有多个robot会受到该协议的限制,对该文件来说,至少要有一条User-agent记录。假设该项的值设为*,则该协议对不论什么机器人均有效,在"robots.txt"文件里,"User-agent:*"这种记录仅仅能有一条。
Disallow :
  该项的值用于描写叙述不希望被訪问到的一个URL,这个URL能够是一条完整的路径,也能够是部分的,不论什么以Disallow开头的URL均不会被robot訪问到。比如"Disallow: /help"对/help.html和/help/index.html都不同意搜索引擎訪问,而"Disallow:/help/"则同意robot訪问/help.html,而不能訪问/help/index.html。不论什么一条Disallow记录为空,说明该站点的全部部分都同意被訪问,在"/robots.txt"文件里,至少要有一Disallow记录。假设"/robots.txt"是一个空文件,则对于全部的搜索引擎robot,该站点都是开放的。
四、robots.txt文件使用方法举例
例1.            禁止全部搜索引擎訪问站点的不论什么部分
下载该robots.txt文件 User-agent: *
Disallow: /
例2.            同意全部的robot訪问
(或者也能够建一个空文件 "/robots.txt" file)
User-agent: *
Disallow:
例3.            禁止某个搜索引擎的訪问
User-agent: BadBot
Disallow: /
例4.            同意某个搜索引擎的訪问
User-agent: baiduspider
Disallow:
User-agent: *
Disallow: /
例5. 一个简单样例
在这个样例中,该站点有三个文件夹对搜索引擎的訪问做了限制,即搜索引擎不会訪问这三个文件夹。
须要注意的是对每个文件夹必须分开声明,而不要写成 "Disallow: /cgi-bin/ /tmp/"。
User-agent:后的* 具有特殊的含义,代表"any robot",所以在该文件里不能有"Disallow:
/tmp/*" or "Disallow: *.gif"这种记录出现.
User-agent: *
Disallow: /cgi-bin/
Disallow: /tmp/
Disallow: /~joe/
五、robots.txt文件參考资料
robots.txt文件的更详细设置,请參看下面资料:
· Web Server Administrator's Guide to the Robots Exclusion Protocol
· HTML Author's Guide to the Robots Exclusion Protocol
· The original 1994 protocol description, as currently deployed
· The revised Internet-Draft specification, which is not yet completed or implemented
 
在你的主页中为Web Robot设计路标
Internet越来越酷,WWW的知名度如日中天。在Internet上公布公司信息、进行电子商务已经从时髦演化成时尚。作为一个WebMaster,你可能对HTML、Javascript、Java、 ActiveX了如指掌,但你是否知道什么是WebRobot?你是否知道Web Robot和你所设 计的主页有什么关系?
  Internet上的流浪汉--- Web Robot
有时你会莫名其妙地发现你的主页的内容在一个搜索引擎中被索引,即使你从未与他 们有过不论什么联系。事实上这正是Web Robot的功劳。WebRobot事实上是一些程序,它能够 穿越大量Internet网址的超文本结构,递归地检索网络网站全部的内容。这些程序有时被叫“蜘蛛(Spider)” , “网上流浪汉(Web Wanderer)”,“网络蠕虫(web worms)”或Webcrawler。一些Internet网上知名的搜索引擎网站(Search Engines)都 有专门的WebRobot程序来完毕信息的採集,比如Lycos,Webcrawler,Altavista等,以及中文搜索引擎网站比如北极星
,网易,GOYOYO等。WebRobot就象一个不速之客,无论你是否在意,它都会忠于自己主人的职责,任劳任怨、不知疲倦地奔波于万维网的空间,当然也会光临你的主页,检索主页内容并生成它所须要的记录格式。也许有的主页内容你乐于世人皆知,但有的内容你却不愿被洞察、索引。难道你就仅仅能任其“横行”于自己主页空间,是否能指挥和控制WebRobot的行踪呢?答案当然是肯定的。仅仅要你阅读了本篇的下文,就能够象一个交通 警察一样,布置下一个个路标,告诉WebRobot应该怎么去检索你的主页,哪些能够检索,哪些不能够訪问。事实上Web Robot能听懂你的话不要以为Web Robot是毫无组织,毫无管束地乱跑。非常多Web Robot软件给网络网站的 管理员或网页内容制作者提供了两种方法来限制Web Robot的行踪:
1.         Robots Exclusion Protocol 协议
网络网站的管理员能够在网站上建立一个专门格式的文件,来指出网站上的哪一部分 能够被robot訪问, 这个文件放在网站的根文件夹下,即robots.txt." target="_blank">http://.../robots.txt.
2.         Robots META tag
一个网页作者能够使用专门的HTML META tag ,来指出某一个网页能否够被索 引、分析或链接。这些方法适合于大多数的Web Robot,至于是否在软件中实施了这些方法,还依赖于 Robot的开发人员,并不是能够保证对不论什么Robot都灵验。假设你迫切须要保护自己内容,则应考虑採用诸如添加password等其它保护方法。
 
使用Robots Exclusion Protocol协议
当Robot訪问一个 Web 网站时,比方http://www.sti.net.cn/,它先去检查文件robots.txt"target="_blank">http://www.sti.net.cn/robots.txt。假设这个文件存在,它便会依照这种记录格式去分析:
  User-agent: *
  Disallow: /cgi-bin/
  Disallow: /tmp/
  Disallow: /~joe/
  以确定它是否应该检索网站的文件。这些记录是专门给Web Robot看的,一般的浏览者大概永远不会看到这个文件,所以千万不要异想天开地在里面增加形似 类的HTML语句或是“How do you do? where areyou from?”之类假情假意的问候语。
  在一个网站上仅仅能有一个 "/robots.txt" 文件,并且文件名称的每一个字母要求所有是小写。在Robot的记录格式中每一个单独的"Disallow"行表示你不希望Robot訪问的URL, 每一个URL必须单独占一行,不能出现"Disallow: /cgi-bin/ /tmp/"这种病句。同一时候在一个记录中不能出现空行,这是由于空行是多个记录切割的标志。User-agent行指出的是Robot或其它代理的名称。在User-agent行,'*' 表示一个特殊的含义---所有的robot。
  以下是几个robot.txt的样例:
  在整个server上拒绝全部的robots:
  User-agent: *
Disallow: /
 
  同意全部的robots訪问整个网站:
  User-agent: *
  Disallow:
  或者产生一个空的 "/robots.txt" 文件。
 
  server的部分内容同意全部的robot訪问
  User-agent: *
  Disallow: /cgi-bin/
  Disallow: /tmp/
  Disallow: /private/
 
  拒绝某一个专门的robot:
  User-agent: BadBot
  Disallow: /
 
 
  仅仅同意某一个robot光顾:
  User-agent: WebCrawler
  Disallow:
  User-agent: *
  Disallow: /
  
  最后我们给出 http://www.w3.org/网站上的robots.txt:
  # For use by search.w3.org
  User-agent: W3Crobot/1
  Disallow:
  User-agent: *
  Disallow: /Member/ # This is restricted to W3C Members only
  Disallow: /member/ # This is restricted to W3C Members only
  Disallow: /team/ # This is restricted to W3C Team only
  Disallow: /TandS/Member # This is restricted to W3C Members only
  Disallow: /TandS/Team # This is restricted to W3C Team only
  Disallow: /Project
  Disallow: /Systems
  Disallow: /Web
  Disallow: /Team
  
  使用Robots META tag方式
Robots META tag 同意HTML网页作者指出某一页能否够被索引,或能否够用来查找很多其它的链接文件。眼下仅仅有部分robot实施了这一功能。
Robots META tag的格式为:
象其它的META tag一样,它应该放在HTML文件的HEAD区:
  ...
  Robots META tag指令使用逗号隔开,能够使用的指令包含 [NO]INDEX 和[NO]FOLLOW。INDEX指令指出一个索引性robot能否够对本页进行索引;FOLLOW 指
令指出robot能否够跟踪本页的链接。缺省的情况是INDEX和FOLLOW。比如:一个好的Web 网站管理员应该将robot的管理考虑在内,使robot为自己的主页服务, 同一时候又不损害自己网页的安全。

Robots协议具体解释的更多相关文章

  1. 笔记整理--玩转robots协议

    玩转robots协议 -- 其他 -- IT技术博客大学习 -- 共学习 共进步! - Google Chrome (2013/7/14 20:24:07) 玩转robots协议 2013年2月8日北 ...

  2. VRRP协议具体解释

    转帖:http://blog.chinaunix.net/space.php?uid=11654074&do=blog&id=2857384 Contents              ...

  3. HTTP协议具体解释

    HTTP是一个属于应用层的面向对象的协议.因为其简捷.高速的方式.适用于分布式超媒体信息系统. 它于1990年提出,经过几年的使用与发展,得到不断地完好和扩展.眼下在WWW中使用的是HTTP/1.0的 ...

  4. Robots协议

       Robots协议 什么是robots? Robots文件:网站和搜索引擎之间的一个协议. 用来防止搜索引擎抓取那些我们不想被搜索引擎看到的隐私内容. Robots文件告诉蜘蛛什么是可以被查看的. ...

  5. 芝麻HTTP:分析Robots协议

    利用urllib的robotparser模块,我们可以实现网站Robots协议的分析.本节中,我们来简单了解一下该模块的用法. 1. Robots协议 Robots协议也称作爬虫协议.机器人协议,它的 ...

  6. [python爬虫]Requests-BeautifulSoup-Re库方案--robots协议与Requests库实战

    [根据北京理工大学嵩天老师“Python网络爬虫与信息提取”慕课课程编写 慕课链接:https://www.icourse163.org/learn/BIT-1001870001?tid=100223 ...

  7. ARP协议具体解释之Gratuitous ARP(免费ARP)

    ARP协议具体解释之Gratuitous ARP(免费ARP) Gratuitous ARP(免费ARP) Gratuitous ARP也称为免费ARP.无故ARP.Gratuitous ARP不同于 ...

  8. 使用 urllib 分析 Robots 协议

    (1) Robots Exclusion Protocol,网络爬虫排除标准,也称爬虫协议.机器人协议,用来告诉爬虫和搜索引擎哪些页面可以抓取,哪些不可以抓取(2) Robots 协议以 robots ...

  9. Python 爬虫-Robots协议

    2017-07-25 21:08:16 一.网络爬虫的规模 二.网络爬虫的限制 • 来源审查:判断User‐Agent进行限制 检查来访HTTP协议头的User‐Agent域,只响应浏览器或友好爬虫的 ...

随机推荐

  1. Good vs Evil

    Good vs Evil Description Middle Earth is about to go to war. The forces of good will have many battl ...

  2. WordPress Backdoor未授权访问漏洞和信息泄露漏洞

    漏洞名称: WordPress Backdoor未授权访问漏洞和信息泄露漏洞 CNNVD编号: CNNVD-201312-497 发布时间: 2013-12-27 更新时间: 2013-12-27 危 ...

  3. PHP ‘scan’函数拒绝服务漏洞

    漏洞名称: PHP ‘scan’函数拒绝服务漏洞 CNNVD编号: CNNVD-201311-464 发布时间: 2013-12-06 更新时间: 2013-12-06 危害等级: 中危   漏洞类型 ...

  4. Win系统下制作U盘CLOVER引导+安装原版Mavericks10.9

    啃苹果有一段时间了,之前一直用白苹果,但是白苹果配置有所限制,对于我搞音频的人来讲,显得有点拖沓.所以研究了将近2年的黑苹果,最近心血来潮给大家一个比较傻瓜式的教程,首先强调一点,黑苹果是需要折腾的, ...

  5. EventHandlerList z

    写一个类时,有时候会在同一个类上添加很多事件,事件很多的话,是不容易管理的,.NET提供的EventHandlerList可以辅助多个事件的管 理,但不方便的地方是,它不是类型安全的,缺少类型安全,多 ...

  6. CORREL

    CORREL Show All Returns the correlation coefficient of the array1 and array2 cell ranges. Use the co ...

  7. HOOK windows消息 C# 代码

    Option Explicitprivate [DllImport("GAIS", SetLastError=true)] static extern long CallWindo ...

  8. hdu-5364 Distribution money

    http://acm.hdu.edu.cn/showproblem.php?pid=536 Distribution money Time Limit: 2000/1000 MS (Java/Othe ...

  9. HDU- 2063 过山车

    http://acm.hdu.edu.cn/showproblem.php?pid=2063 过山车//我的第一个二分匹配 Time Limit: 1000/1000 MS (Java/Others) ...

  10. 【原】spark-submit提交应用程序的内部流程

    我们经常通过spark-submit来提交spark应用程序,那么让我们一起看一下这里面到底发生了什么吧. 知识点: 1.CLI命令行界面启动Spark应用程序 Unix有两种方式:1)spark-s ...