什么样的爬虫才是好爬虫:Robots协议探究





网站的管理者们通常会有这样一种心态:一方面期待百度、Google这样的搜索引擎来抓取网站的内容,另一方面又很厌恶其他来路不明的网络爬虫抓取自己的信息。正是因为这样,才有“好爬虫”、“坏爬虫”这样的说法。


提到“好爬虫”,就不得不提网络爬虫与web之间的访问授权协议——Robots协议了。


Robots协议的定义


Robots协议(也称为爬虫协议、机器人协议等)的全称是“网络爬虫排除标准”(Robots Exclusion Protocol),网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取。


根据协议,网站管理员可以在网站域名的根目录下放一个robots.txt 文本文件,里面可以指定不同的网络爬虫能访问的页面和禁止访问的页面,指定的页面由正则表达式表示。网络爬虫在采集这个网站之前,首先获取到这个文件,然后解析到其中的规则,然后根据规则来采集网站的数据。


注意,这个协议的存在更多的是需要网络爬虫去遵守,而起不到防止爬虫的功能。


为什么需要Robots协议


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


  1. 喂给爬虫一堆url,我们称之为种子(seeds);

  2. 爬虫抓取seeds,解析html网页,抽取其中的超级链接;

  3. 爬虫接着抓取这些新发现的链接指向的网页。


步骤2和步骤3循环往复。


了解了上面的流程就能发现:对爬虫来说网站非常被动,只有老老实实被抓取的份。


所以,对于网站的管理者来说,就存在这样的需求:


  • 某些路径下是个人隐私或者网站管理使用,不想被搜索引擎抓取,比如说日本爱情动作片;

  • 不喜欢某个搜索引擎,不愿意被他抓取,最有名的就是之前淘宝不希望被百度抓取;

  • 小网站使用的是公用的虚拟主机,流量有限或者需要付费,希望搜索引擎抓的温柔点;

  • 某些网页是动态生成的,没有直接的链接指向,但是希望内容被搜索引擎抓取和索引。


网站内容的所有者是网站管理员,搜索引擎应该尊重所有者的意愿,为了满足以上等等,就需要提供一种网站和爬虫进行沟通的途径,给网站管理员表达自己意愿的机会。有需求就有供应,robots协议就此诞生。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值