Robots协议
1. Robots协议基础
Robots协议,即Robots Exclusion Standard 网络爬虫排除协议。
作用:网站告知网络爬虫哪些页面可以爬取,哪些不能爬取
形式:在网站根目录下的robots.txt文件
例:京东的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: /
基本协议语法:
# 注释
* 代表所有
./代表根目录
User-agent: * # 代表的是那些爬虫
Disallow: / # 代表不允许爬虫访问的目录
其他网站的一些Robots协议(但并不是所有网站都有robots协议):
- 百度:http://www.baidu.com/robots.txt
- 新浪新闻:http://news.sina.com.cn/robots.txt
- 腾讯:http://www.qq.com/robots.txt
- 腾讯新闻:http://news.qq.com/robots.txt
- 国家教育部:http://www.meo.edu.cn/robots.txt (注:无robots协议)
2.Robots协议的遵守方式
(1). Robots协议的使用
网络爬虫:自动或人工识别robots.txt,再进行内容爬取
约束性:Robots协议是建议但并非约束性,网络爬虫可以不遵守,但存在法律风险。
(2). Robots协议的理解
-
爬取网页,玩转网页
-
访问量很小:可以遵守
-
访问量很大:建议遵守
-
爬取网站,爬取系列网站
-
非商业且偶尔,建议遵守
-
商业利益:必须遵守
-
爬取全网
-
必须遵守