分类目录网-汇聚各行业优秀网站大全! VIP快审 免费注册 会员登录
首页 新闻资讯 SEO优化

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

时间:2017-05-21 15:28 来源:未知 作者:分类目录网 人气:
【导读】:2013年2月8日北京市第一中级人民法院正式受理了百度诉奇虎360违反Robots协议抓...

    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的内容

相关推荐

版权声明:

1、本文系会员投稿或转载自网络,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场;

2、本站仅提供信息发布平台,不承担相关法律责任;

3、若侵犯您的版权或隐私,请联系本站管理员删除。

分类目录 WWW.FLML.CN 皖ICP备19001157号-5