一.定义
robots协议是一种约定俗称的爬虫协议,由网站主人规定了该网站的哪些内容可以爬取,哪些内容不可以爬取,擅自爬取可能承担相关法律责任。之所以称之为君子协议,是因为防君子不防小人,该协议并没有用技术手段实现反爬,只是一个申明。
在网站根目录后输入/robots.txt后即可查看该网站的君子协议
例如访问https://www.douban.com/robots.txt可查看豆瓣网站的君子协议
查看结果如下
User-agent: *
Disallow: /subject_search
Disallow: /amazon_search
Disallow: /search
Disallow: /group/search
Disallow: /event/search
Disallow: /celebrities/search
Disallow: /location/drama/search
Disallow: /forum/
Disallow: /new_subject
Disallow: /service/iframe
Disallow: /j/
Disallow: /link2/
Disallow: /recommend/
Disallow: /doubanapp/card
Disallow: /update/topic/
Disallow: /share/
Allow: /ads.txt
Sitemap: https://www.douban.com/sitemap_index.xml
Sitemap: https://www.douban.com/sitemap_updated_index.xml
Crawl-delay: 5User-agent: Wandoujia Spider Disallow: /
User-agent: Mediapartners-Google
Disallow: /subject_search
Disallow:
/amazon_search
Disallow: /search
Disallow: /group/search
Disallow:/event/search
Disallow: /celebrities/search
Disallow:location/drama/search Disallow: /j/
二.用法
名 | 意 |
---|---|
User-agent: * | 这里的*代表的所有的搜索引擎种类,*是一个通配符 |
Disallow: /admin/ | 这里定义是禁止爬寻admin目录下面的目录 |
Disallow: /require/ | 这里定义是禁止爬寻require目录下面的目录 |
Disallow: /ABC/ | 这里定义是禁止爬寻ABC目录下面的目录 |
Disallow: /cgi-bin/*.htm | 禁止访问/cgi-bin/目录下的所有以".htm"为后缀的URL(包含子目录)。 |
Disallow: /? | 禁止访问网站中所有包含问号 (?) 的网址 |
Disallow: /.jpg$ | 禁止抓取网页所有的.jpg格式的图片 |
Disallow:/ab/adc.html | 禁止爬取ab文件夹下面的adc.html文件。 |
Allow: /cgi-bin/ | 这里定义是允许爬寻cgi-bin目录下面的目录 |
Allow: /tmp | 这里定义是允许爬寻tmp的整个目录 |
Allow: .htm$ | 仅允许访问以".htm"为后缀的URL。 |
Allow: .gif$ | 允许抓取网页和gif格式图片 |
Sitemap: | 网站地图 告诉爬虫这个页面是网站地图 |
实例分析:淘宝网的 Robots.txt文件
User-agent: Baiduspider
Disallow: /
User-agent: baiduspider
Disallow: /
很显然淘宝不允许百度的机器人访问其网站下其所有的目录。