robots.txt协议

实际上,各种搜索引擎都可以看作是爬虫技术的运用。例如,对于百度来说,它拥有爬虫程序Baiduspider,这种程序自动地在互联网上寻找并下载信息,存在百度的数据库中并形成索引,用户就是根据这些索引来进行搜索的。
无论是对于商业性的大型爬虫程序,还是对于个人写的小型爬虫程序,都应遵守所谓“robots.txt”。


Robots协议


这种协议告诉了爬虫引擎,什么内容可以爬取、什么内容不可以爬取,例如:
taobao.com/robots.txt
内容如下:

User-agent:  Baiduspider
Allow:  /article
Allow:  /oshtml
Allow:  /ershou
Allow: /$
Disallow:  /product/
Disallow:  /

User-Agent:  Googlebot
Allow:  /article
Allow:  /oshtml
Allow:  /product
Allow:  /spu
Allow:  /dianpu
Allow:  /oversea
Allow:  /list
Allow:  /ershou
Allow: /$
Disallow:  /

User-agent:  Bingbot
Allow:  /article
Allow:  /oshtml
Allow:  /product
Allow:  /spu
Allow:  /dianpu
Allow:  /oversea
Allow:  /list
Allow:  /ershou
Allow: /$
Disallow:  /

User-Agent:  360Spider
Allow:  /article
Allow:  /oshtml
Allow:  /ershou
Disallow:  /

User-Agent:  Yisouspider
Allow:  /article
Allow:  /oshtml
Allow:  /ershou
Disallow:  /

User-Agent:  Sogouspider
Allow:  /article
Allow:  /oshtml
Allow:  /product
Allow:  /ershou
Disallow:  /

User-Agent:  Yahoo!  Slurp
Allow:  /product
Allow:  /spu
Allow:  /dianpu
Allow:  /oversea
Allow:  /list
Allow:  /ershou
Allow: /$
Disallow:  /

User-Agent:  *
Disallow:  /

User-Agent代表爬虫程序的名字,例如Baiduspider、Googlebot
对于每个爬虫程序,他有对应的Allow目录,也就是允许这个爬虫程序爬取的网站二级目录,也有相应的Disallow目录
最后两行User-Agent:* Disallow:/表示对于其他所有爬虫程序,都不可爬虫

而有些网站除了最后这两行内容外,还有如下内容

User-agent: *
Disallow: /
Disallow: /poi/detail.php

Sitemap: http://www.mafengwo.cn/sitemapIndex.xml

这是告诉爬虫程序编写者,如果需要尽心爬虫,应该进入它所给的sitemap站点中

但其实,robots.txt是一个“君子协定”,它并不强迫爬虫程序只能爬取哪些目录。而它禁止爬取的内容,其实告诉了我们哪些是有价值的内容

发布了38 篇原创文章 · 获赞 9 · 访问量 6303

猜你喜欢

转载自blog.csdn.net/qq_42138454/article/details/104093047