python学习交流公众号 Hello Python上线啦,欢迎关注
一:什么是robots?
Robots协议,又称作爬虫协议,机器人协议,全名叫做网络爬虫排除标准(Robots Exclusion Protocol),是用来告诉爬虫和搜索引擎哪些页面可以抓取,哪些不可以抓取,通常为一个robots.txt文本文件,一般放在网站的根目录下。如:https://www.jd.com/robots.txt
二:基本语法
- User-agent:Baiduspider(描述了搜索爬虫的名称,这里为Baiduspider,代表设置的规则是对百度爬虫是有效的,如果有很多条的User-agent:,就会有多个爬虫会受到限制)
- User-agent: *,所有
- Disallow: /baidu(指定了不允许抓取的目录)
- Disallow: / 则表示不允许抓取所有页面
三:配置
- 写一个robots.txt文件,内容如下,示例为禁止所有爬虫
User-agent: *
Disallow: /
- 配置nginx
location /robots.txt {
alias /path/to/static/robots.txt;
}
使用django的话配置如下:根路由下添加
from django.views.generic import TemplateView
path('robots.txt', TemplateView.as_view(template_name='robot/robots.txt', content_type='text/plain')),