分析亚马逊robots.txt
分析亚马逊robots.txt
先来了解一下什么是robots.txt?
搜索引擎使用spider程序自动访问互联网上的网页并获取网页信息。spider在访问一个网站时,会首先会检查该网站的根域下是否有一个叫做robots.txt的纯文本文件,在此文件中会声明该网站中不想被robot访问的部分或者指定搜索引擎只收录特定的部分。
User-agent: 该项的值用于描述搜索引擎robot的名字。如果该项的值设为*,则对任何robot均有效。
Disallow: 该项的值用于描述不希望被访问的一组URL,这个值可以是一条完整的路径,也可以是路径的非空前缀,以Disallow项的值开头的URL不会被robot访问。
Allow:该项的值用于描述希望被访问的一组URL,与Disallow项相似,这个值可以是一条完整的路径,也可以是路径的前缀,以Allow项的值开头的URL是允许robot访问的。
在浏览器中输入http://www.amazon.com/robots.txt得到亚马逊robots.txt全部代码,如下图
从图中可以看出,亚马逊的robots协议制定的十分详细。
首先,对任意爬虫,亚马逊将大部分信息都设置为禁止爬虫访问,被禁止的内容大致有:登录注册页面、购物车、产品信息、用户评论、投票、好友twitter、历史记录、图片、音视频文件、排行榜等目录下的网页信息。这些被禁止的内容大都具备较高的商业利用价值或包含用户的个人信息。
但对心愿单部分亚马逊允许爬取部分信息,具体允许爬取的信息如下图:
Xshot-0002.png
从图中可以看出,亚马逊允许爬虫爬取心愿单的通用部分,以及售出或购买的商品的部分。亚马逊将这些内容公开的目的可能是为了使用户在浏览其他爬取了亚马逊信息的搜索引擎时也能看到自己想买或已买的商品,这也是一种宣传和引流的手段。
Xshot-0003.png另外,由上图可知,亚马逊还将宣传页面的部分音乐公开和报价单公开,报价单是来源于一些第三方卖家,可能这些信息对亚马逊本平台的利益影响不大,所以也允许爬虫爬取信息。
其次,亚马逊单独针对两个爬虫制定了robots协议。
第一是谷歌爬虫 Googlebot,对谷歌爬虫的robots和任意爬虫的禁止访问内容基本一致,允许访问部分多了一条主要商家信息
Xshot-0006.png
第二个是一淘网爬虫EtaoSpider,一淘网是阿里巴巴旗下的促销类导购平台,该平台会对商品价格、配送方式、支付方式、售后服务和商家信誉做全方位比较,如果能爬取到亚马逊的各类信息将会对亚马逊的销售产生不利影响,因此亚马逊对EtaoSpider制定所有信息都禁止爬取的协议。
对比淘宝的robots协议,如下图
Xshot-0007.png
明显发现淘宝允许许多权威搜索引擎爬取信息,尤其是给国外的搜索引擎Google、Bing、Yahoo提供了很大的权限,这是淘宝为了提高在国外的知名度的方式,而对国内的搜索引擎淘宝也不允许爬取具有商业价值的产品信息。
综上所述,以亚马逊目前的用户基数和流量已经基本不需要依赖其他搜索引擎的广告和宣传了,因此,他设定严格的robots协议不仅可以保证其网站流量不被其他搜索引擎分走,同时也能实现最大程度上保护用户的个人信息和隐私。