Robots协议
前言
写这个robots协议的文章呢是因为我今天在攻防世界上做题的时候碰到一道关于robots协议的题目,当然这道题也是比较简单,我们先简单的写一个解题思路然后介绍robots协议。
题目
我们点开这个网址之后发现是一个空白页
我们根据题目的提示在URL中输入robots.txt(为什么要输入robots.txt,这个与robots协议有关,后面会说明)我们发现页面发生了变化。
然后我们构造php地址就可以得到flag
我们可以看出这道题目是对robots协议的一个基础考察,比较简单。下面我们介绍robots协议。
1. Robots协议基础
robots协议也叫robots.txt(统一小写)是一种存放于网站根目录下的ASCII编码的文本文件,它通常告诉网络搜索引擎的漫游器(又称网络蜘蛛),此网站中的哪些内容是不应被搜索引擎的漫游器获取的,哪些是可以被漫游器获取的。
作用:网站告知网络爬虫哪些页面可以爬取,哪些不能爬取
形式:在网站根目录下的robots.txt文件
基本协议语法:
# 注释
* 代表所有
./代表根目录
User-agent: * # 代表的是那些爬虫
Disallow: / # 代表不允许爬虫访问的目录
例:京东的Robots协议
http://www.jd.com/robots.txt
可以看到京东对爬虫的限制:
# 对于任何的网络爬虫来源,遵守如下协议
User-agent: *
Disallow: /?*
Disallow: /pop/*.html
Disallow: /pinpai/*.html?*
# 以下四个网络爬虫不允许爬取任何资源
User-agent: EtaoSpider
Disallow: /
User-agent: HuihuiSpider
Disallow: /
User-agent: GwdangSpider
Disallow: /
User-agent: WochachaSpider
Disallow: /
robots.txt文件放置在网站根目录下。举例来说,当spider访问一个网站时,首先会检查该网站中是否存在robots.txt这个文件,如果 Spider找到这个文件,它就会根据这个文件的内容,来确定它访问权限的范围。(并不是所有的网站都有robots协议)
2、Robots协议的使用
网络爬虫:自动或人工识别robots.txt,再进行内容爬取
约束性:Robots协议是建议但并非约束性,网络爬虫可以不遵守,但存在法律风险。
3、Robots协议的影响
Robots协议是网站出于安全和隐私考虑,防止搜索引擎抓取敏感信息而设置的。搜索引擎的原理是通过一种爬虫spider程序,自动搜集互联网上的网页并获取相关信息。而鉴于网络安全与隐私的考虑,每个网站都会设置自己的Robots协议,来明示搜索引擎,哪些内容是愿意和允许被搜索引擎收录的,哪些则不允许。搜索引擎则会按照Robots协议给予的权限进行抓取。
淘宝封杀
2008年9月8日,淘宝网宣布封杀百度爬虫,百度忍痛遵守爬虫协议。因为一旦破坏协议,用户的隐私和利益就无法得到保障,搜索网站就没有任何隐私可言。
京东封杀
2011年10月25日,京东商城正式将一淘网的搜索爬虫屏蔽,以防止一淘网对其的内容抓取。
这里只讲了一些基础的东西,本人也对Robots协议只有浅层的了解,如需深究,请自行百度!