基础语法规则
-
文件位置与编码

- 必须放置在网站根目录(如
https://example.com/robots.txt)。 - 使用 UTF-8 编码(推荐)或 ASCII,避免乱码。
- 必须放置在网站根目录(如
-
指令格式
- 每行一条指令,空行分隔不同爬虫组。
- 指令由 字段名 + 冒号 + 空格 + 值 组成(如
User-agent: Baiduspider)。 - 不区分大小写,但建议保持统一。
关键指令说明
User-agent(必选)
指定规则适用的爬虫:
User-agent: Baiduspider→ 仅对百度网页爬虫生效。User-agent: *→ 对所有爬虫生效(通用规则)。
Disallow(禁止抓取)
禁止抓取的路径(支持通配符 和 ):
Disallow: /admin/ # 禁止目录
Disallow: /tmp/*.html # 禁止特定文件类型
Disallow: /search?* # 禁止带参数URL
Disallow: /private$ # 仅禁止 /private(不包含子路径)
Allow(允许抓取)
在禁止范围内设置例外(百度支持此指令):
Disallow: /api/
Allow: /api/public/ # 允许 /api/public/ 子目录
Sitemap(站点地图)
声明 XML 站点地图地址(需完整URL):
Sitemap: https://example.com/sitemap.xml
Crawl-delay(抓取延迟)
建议百度爬虫抓取间隔(秒),但百度未官方承诺遵守:
Crawl-delay: 2 # 间隔2秒(谨慎使用,可能影响收录效率)
百度特有规则与建议
-
百度专用爬虫标识
Baiduspider:网页抓取Baiduspider-image:图片抓取Baiduspider-video:视频抓取Baiduspider-news:新闻抓取
-
禁止抓取动态参数(慎用)
Disallow: /*?* # 可能误禁重要内容,建议精确限制 -
屏蔽不相关页面
- 禁止抓取登录页、个人中心、重复内容(如打印页):
Disallow: /login/ Disallow: /user/profile/ Disallow: /print/
- 禁止抓取登录页、个人中心、重复内容(如打印页):
完整示例
Allow: /public/
Disallow: /private/
Disallow: /tmp/
Sitemap: https://example.com/sitemap.xml
# 通用规则(其他爬虫)
User-agent: *
Disallow: /admin/
Disallow: /secret/
注意事项
-
避免错误语法
- 勿使用注释符()在同一行指令后(可能被误解)。
- 避免使用
Disallow:(空值),这表示允许所有内容。
-
路径匹配规则
- 百度遵循 前缀匹配(如
Disallow: /dir会屏蔽/dir/file)。 - 路径区分大小写(取决于服务器配置)。
- 百度遵循 前缀匹配(如
-
测试工具
- 使用百度搜索资源平台(Search Console)的 robots 检测工具 验证规则。
-
禁止封禁重要资源
- 确保不屏蔽 CSS/JS/图片文件,否则影响页面渲染评价。
- 勿封禁
sitemap.xml、robots.txt自身。
官方参考
- 百度站长帮助文档:robots 协议说明
- 通用标准:RFC 9309(原 robots.txt 协议)
合理配置 robots.txt 可优化百度收录效率,避免敏感内容被抓取,建议定期检查日志,确认 Baiduspider 遵守规则。
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。