80网站之家-汇聚百万优秀网站!
您好,请 【登陆】【注册】
本站统计:会员163个 ,优秀网站26788个 , 待审网站0个 ,新闻3235
【好站播报】: rtys131人体艺术
您现在的位置:80网站之家 > 网站运营 > SEO优化 >

带你玩转robots协议 robots协议怎么写 新手必备

作者:80网站之家 来源:未知 发布时间:2017-05-21 15:28 浏览: [免费提交网站]

    2013年2月8日北京市第一中级人民法院正式受理了百度诉奇虎360违反“Robots协议”抓取、复制其网站内容的不正当竞争行为一案,索赔金额高达一亿元,这可以看做2012年下半年“3B大战”的继续。在此次索赔案件中,百度称自己的Robots文本中已设定不允许360爬虫进入,而360的爬虫依然对“百度知道”、“百度百科”等百度网站内容进行抓取。

    其 实早在2012年11月初,针对双方摩擦加剧的情况,在中国互联网协会的牵头下,包括百度、新浪、奇虎360在内的12家互联网公司已共同签署了《互联网 搜索引擎服务自律公约》,在公约第七条承诺“遵循国际通行的行业惯例与商业规则,遵守机器人协议(robots协议)。

    今天就找个机会聊聊一夜成名的robots协议。

    初识robots协议

    什么是robots

    要 了解robots协议首先要了解robots,本文说的robots不是《I,robot》里的威尔·史密斯,不是《机器人总动员》里的瓦力和伊娃,不是 《终结者》系列中的施瓦辛格。什么?这些经典电影你都不知道?好吧,算我想多了。本文的robots特指搜索引擎领域的web robots,这个名字可能很多人不熟悉,但是提到Web Wanderers,Crawlers和Spiders很多人可能就恍然大悟了,在中文里我们统称为爬虫或者网络爬虫,也就是搜索引擎抓取互联网网页的程序。

    同学们都知道网页是通过超级链接互相关联起来的,从而形成了网页的网状结构。爬虫的工作方式就像蜘蛛在网上沿着链接爬来爬去,最基本的流程可以简化如下:

    1.喂给爬虫一堆url,我们称之为种子(seeds)2.爬虫抓取seeds,解析html网页,抽取其中的超级链接3.爬虫接着抓取这些新发现的链接指向的网页

    2,3循环往复

    什么是robots协议

    了解了上面的流程就能看到对爬虫来说网站非常被动,只有老老实实被抓取的份。存在这样的需求:

    1.某些路径下是个人隐私或者网站管理使用,不想被搜索引擎抓取,比如说日本爱情动作片2.不喜欢某个搜索引擎,不愿意被他抓取,最有名的就是之前淘宝不希望被百度抓取3.小网站使用的是公用的虚拟主机,流量有限或者需要付费,希望搜索引擎抓的温柔点4.某些网页是动态生成的,没有直接的链接指向,但是希望内容被搜索引擎抓取和索引网 站内容的所有者是网站管理员,搜索引擎应该尊重所有者的意愿,为了满足以上等等,就需要提供一种网站和爬虫进行沟通的途径,给网站管理员表达自己意愿的机 会。有需求就有供应,robots协议就此诞生。Robots协议,学名叫:The Robots Exclusion Protocol,就搜索引擎抓取网站内容的范围作了约定,包括网站是否希望被搜索引擎抓取,哪些内容不允许被抓取,把这些内容放到一个纯文本文件 robots.txt里,然后放到站点的根目录下。爬虫抓取网站内容前会先抓取robots.txt,据此“自觉地”抓取或者不抓取该网页内容,其目的是 保护网站数据和敏感信息、确保用户个人信息和隐私不被侵犯。

    需要注意的是robots协议并非是规范,只是行业内一个约定俗成的协议。什么意思呢?Robots协议不是什么技术壁垒,而只是一种互相尊重的协议,好比私家花园的门口挂着“闲人免进”,尊重者绕道而行,不尊重者依然可以推门而入,比如说360。

    说了这么多,看几个有名的例子感觉一下先:

    例子1:淘宝

    User-agent: Baiduspider

    Disallow: /

    User-agent: baiduspider

    Disallow: /

    程序猿,你懂的。这不就是淘宝不想让百度抓取嘛例子2:京东

    User-agent: *

    Disallow: /?*

    Disallow: /pop/*.html

    User-agent: EtaoSpider

    Disallow: /

    这个也不复杂,京东有2个目录不希望所有搜索引擎来抓。同时,对etao完全屏蔽。

    基本玩法

    robots.txt的位置

    说简单也简单,robots.txt放到一个站点的根目录下即可。说复杂也有点小复杂,一个robots.txt只能控制相同协议,相同端口,相同站点的网页抓取策略。什么意思呢?看个例子最清楚:

    百度网页搜索

    百度知道

    这两个robots.txt的内容是不同的,也就是说百度网页搜索和百度知道的抓取策略可以由自己独立的robots.txt来控制,井水不犯河水。

    robots.txt的内容

0
赞一个

在线评论

最新评论

随便看看

  • 开心网创始人程炳皓

    开心网创始人程炳皓

    程炳皓,开心网创始人兼首席执行官。1998年加盟新浪,负责网站技

  • 360搜索

    360搜索

    360旗下搜索引擎服务,包含网页、新闻、影视等搜索产品,为您带

  • 当当网

    当当网

    全球领先的综合性网上购物中心。超过100万种商品在线热销!图书