什么是robots.txt?
Robots.txt(Robots协议)是一种被网站管理者用来告诉搜索引擎哪些页面可以被爬取和哪些页面不应该被爬取的协议。Robots协议最初在1994年提出,就是一种纯文本的文件,通常被放置在站点的根目录下。
Robots.txt的作用
它的主要作用是通过约束搜索引擎爬虫的范围和访问速度,来降低因爬取网站内容而带来的服务器压力,同时还可以避免搜索引擎爬到一些敏感的信息,比如隐私信息等。例如如果你有一个不想让搜索引擎爬取的文件夹,那么你就可以通过在根目录下添加一个robots.txt文件,来告诉搜索引擎的爬虫不要爬取该文件夹下所有内容,这样就可以保护文件夹内的数据不被泄露。
Robots.txt的格式
它是一个文本文件,通常以“robots.txt”为文件名,放在站点根目录下。它的格式比较简单,由若干行记录构成,并由网站管理员编辑。一个完整的robots.txt文件由两部分构成:用户代理和规则组成。
User-agent表示搜索引擎的爬虫
我们要先知道的是,User-agent表示爬虫的名称,不同的User-agent代表不同的爬虫搜索引擎。我们可以在robots.txt中设置不同的User-agent来达到不同的效果。
比如下面的设置:
User-agent:Googlebot
Disallow:/admin/
User-agent:Baiduspider
Disallow:/secret/
User-agent:*
Disallow:/
意思就是:
Google搜索引擎的爬虫不允许访问后台管理(admin)文件夹。
百度搜索引擎的爬虫不允许访问保密的(secret)文件夹。
而所有的搜索引擎的爬虫,都不允许访问网站的任何内容,这是因为我们在最后加上了“/”。
语法及使用方法
Disallow就是要限制访问的URL路径,它的后面跟随的是一条或多条要限制访问的路径。如果要限定多个URL,可以用逗号隔开;如果要限制全部路径,则写成Disallow: /,表示整个站点不会被搜索引擎收录。
Allow是与Disallow相对的,在Disallow的限制下,Allow可以允许某些内容被搜索引擎收录。不过需要注意的是,Allow在robots.txt文件中的使用有时会被忽略,这取决于搜索引擎的实际支持情况。
robots.txt的注意事项
一旦你的网站上线了,建议你要立刻编写robots.txt文件。一些不受欢迎的爬虫搜索机器人,例如垃圾邮件生成器和黑客工具,可能会在一个网站上发起数千个请求,这就浪费了很多带宽和服务器资源。而对于一些敏感信息,如账号密码、银行卡信息等,建议严格限制搜索引擎的爬取。
如果你修改了你的robots.txt文件,搜索引擎并不会立即读取到你的修改,可能需要等待几天或几周才会生效。
最后,要注意的是对于一些非法内容,禁止通过robots.txt来屏蔽搜索引擎蜘蛛的抓取。这些内容包括但不限于色情、赌博、毒品、政治、国家领导人信息等。