如何管理 AI 爬虫?GPTBot、ClaudeBot 等在 robots.txt 里的写法与取舍
如何管理 AI 爬虫?GPTBot、ClaudeBot 等在 robots.txt 里的写法与取舍
管理 AI爬虫的基本做法,是在 robots.txt 里按 User-agent 分别写规则:对负责 AI 搜索、会给你带来引用和曝光的爬虫放行,对只用于模型训练、你不希望被拿去使用的爬虫按需限制。 像 GPTBot、ClaudeBot 这类爬虫都声明了自己的名称,可以在 robots.txt 中单独设置;但 robots.txt 只是约定,只对遵守规则的爬虫有效,真正要拦截,还要在服务器层面处理。本文讲清楚常见 AI 爬虫怎么分类、放行和屏蔽怎么取舍、规则怎么写,以及怎样在自己的日志里看到它们。
一、常见 AI 爬虫怎么分类
不要把“AI 爬虫”当成一个整体。按用途大致分为三类,处理方式不同:
- 训练类:抓取网页内容,用于训练或改进模型。
- 搜索类:为 AI 搜索、AI 问答建立索引,回答问题时可能引用并链接你的页面。
- 用户触发类:用户在对话里让 AI 访问某个网址时,才会去抓取,属于按需访问。
下面是常见的名称,仅供参考。爬虫的名称和用途会调整,具体以各厂商的官方文档为准:
| User-agent | 所属方 | 大致用途 |
|---|---|---|
| GPTBot | OpenAI | 抓取内容,可能用于模型训练 |
| OAI-SearchBot | OpenAI | 用于搜索功能的索引 |
| ChatGPT-User | OpenAI | 用户在对话中触发的访问 |
| ClaudeBot | Anthropic | 抓取内容,可能用于模型训练 |
| PerplexityBot | Perplexity | 搜索索引 |
| Bytespider | 字节跳动 | 抓取内容,用途以官方说明为准 |
| CCBot | Common Crawl | 公开的网页存档,常被各类模型使用 |
| Google-Extended | 一个 robots 控制标记,用于控制内容是否被用于其生成式模型 | |
| Applebot-Extended | Apple | 控制内容是否被用于其模型训练 |
另外,传统搜索引擎的爬虫(百度、Bing、Google 的常规爬虫)与 AI 爬虫是两回事,不要因为屏蔽 AI 爬虫而误伤它们。
二、放行还是屏蔽:怎么取舍
没有统一答案,要看你的网站目标:
- 以获客为目标的企业官网:希望被 AI 搜索推荐、被对话引用,通常应当放行搜索类和用户触发类爬虫。如果被 AI 搜索完全看不到,等于失去了一个新的流量入口。这也是做 GEO 优化时的基础工作之一,可以参考站内的 GEO优化服务。
- 以原创内容为核心资产的站点(深度付费内容、数据库类内容):可以考虑限制训练类爬虫,降低内容被大规模拿去训练的可能。
- 不确定时的折中:放行搜索类,限制训练类,并定期复查效果。
要明白一点:放行并不等于一定会被引用,AI 是否引用你,取决于内容质量、权威度和结构;屏蔽也不能保证内容一定不会被收集,因为 robots.txt 是自愿遵守的约定。
三、robots.txt 示例写法
robots.txt 放在网站根目录,每一组规则以 User-agent 开头,其后跟 Disallow 或 Allow。
示例1:放行搜索类,限制训练类
User-agent: OAI-SearchBot
Allow: /
User-agent: ChatGPT-User
Allow: /
User-agent: PerplexityBot
Allow: /
User-agent: GPTBot
Disallow: /
User-agent: ClaudeBot
Disallow: /
User-agent: CCBot
Disallow: /
User-agent: *
Allow: /
Sitemap: https://www.example.com/sitemap.xml
示例2:只限制部分目录
User-agent: GPTBot
Disallow: /members/
Disallow: /private/
Allow: /
示例3:全部拒绝 AI 训练类爬虫,但保留常规搜索引擎
User-agent: GPTBot
Disallow: /
User-agent: ClaudeBot
Disallow: /
User-agent: Bytespider
Disallow: /
User-agent: Google-Extended
Disallow: /
User-agent: *
Allow: /
写 robots.txt 时有几个常见的坑:
- 一个 User-agent 一组规则,规则之间用空行隔开,注意不要把规则写进错误的分组。
- 路径区分大小写,并且要以
/开头。 Crawl-delay不是所有爬虫都支持,不要依赖它限速。- 修改后要确认文件能被正常访问,返回状态应当是 200,并且是纯文本。
- 网站域名要换成你自己的,示例中的网址只是占位。
四、robots 只是约定,要拦就得在服务器上做
遵守 robots.txt 的是“守规矩”的爬虫。对于不遵守的,或者冒充别人名称的访问者,它没有任何约束力。如果你确实需要拦截,需要在服务器层面处理。例如在 nginx 里,可以按 User-agent 返回 403:
# 示例:按 User-agent 拒绝指定爬虫,请按需调整名单
if ($http_user_agent ~* "(Bytespider|CCBot)") {
return 403;
}
使用这种方式要注意:
- 名单要谨慎,写错了会误伤正常访问,改完先用
nginx -t检查配置再重载。 - User-agent 可以被伪造,所以它只能挡住不伪装的访问;要更可靠,可以结合厂商公布的 IP 范围做校验,具体以各厂商官方文档为准。
- 配合限流,对短时间内请求量异常的来源,在防火墙或网关层做频率限制。
- 保留日志,随时回头看拦截是否生效、有没有误伤。
五、在自己的日志里统计 AI 爬虫
很多站长发现,只要看服务器的访问日志,就能看到各种 AI 爬虫的访问记录。我们自己的站点日志里也能看到多类 AI 爬虫。统计方法并不复杂,以 nginx 默认的访问日志格式为例:
# 统计常见 AI 爬虫的访问次数(按 User-agent 关键字)
awk -F'"' '{print $6}' /path/to/access.log \
| grep -i -E 'gptbot|oai-searchbot|chatgpt-user|claudebot|perplexity|bytespider|ccbot' \
| sed -E 's/.*(GPTBot|OAI-SearchBot|ChatGPT-User|ClaudeBot|PerplexityBot|Bytespider|CCBot).*/\1/I' \
| sort | uniq -c | sort -rn
如果想看它们访问了哪些页面:
# 查看 GPTBot 访问次数靠前的页面
grep -i gptbot /path/to/access.log | awk '{print $7}' | sort | uniq -c | sort -rn | head -20
看日志时可以留意几件事:
- 访问的是哪些页面:是首页、文章,还是大量无意义的参数页。
- 返回状态码:大量 404 说明有死链需要清理,大量 403 说明你的拦截规则在生效。
- 访问频率:突然暴增且影响服务器性能时,需要限流。
- 与内容更新的关系:发布新文章后,观察哪些爬虫会来抓取,可以判断内容是否进入了它们的视野。
需要注意,日志里的名称来自请求头,可能存在伪造,统计结果只能作为参考。
六、配合其他手段提升 AI 可见度
只管理爬虫还不够,让内容更容易被 AI 理解和引用,还需要:
- 清晰的内容结构:首段直接回答问题,小标题分明,适当使用列表和表格。
- 准确的事实信息:价格、地址、联系方式与官网保持一致。
- 站点基础健康:页面能被正常访问、速度合理、没有大量死链。
- 补充说明文件:有些网站会放置面向 AI 的说明文件,例如 llms.txt,这类做法属于新兴的约定,各平台是否支持、如何使用,以各平台官方说明为准,不要把它当作必然生效的手段。
七、建立定期复查的习惯
AI 爬虫的名称、用途和行为都在变化,规则写好之后不能一劳永逸。建议每个月做一次简单复查:打开 robots.txt 确认内容没有被误改,在日志里看看有没有新出现的爬虫名称,核对各厂商文档里关于爬虫用途的更新,再根据业务目标调整放行和限制的名单。每次调整都记录日期和原因,日后回看时就能判断,某次流量或引用情况的变化是不是和规则调整有关。
常见问题
屏蔽了 GPTBot,ChatGPT 还会引用我的网站吗? GPTBot、OAI-SearchBot 等是不同的爬虫,用途不同。是否影响引用,取决于你屏蔽了哪一个以及厂商的具体实现,请以官方文档为准。
robots.txt 改了多久生效? 爬虫通常会定期重新读取该文件,生效时间不确定,可以通过日志观察变化。
屏蔽 AI 爬虫会影响百度、Google 的收录吗?
正常情况下不会,它们使用的是不同的 User-agent,只要没有误写 User-agent: * 的 Disallow 规则就行。改完后务必检查。
我应该全部屏蔽吗? 以获客为目的的企业站,建议至少放行搜索类和用户触发类。是否限制训练类,取决于你对内容的定位。
如果你想系统规划网站在 AI 搜索中的曝光,或者需要对 robots.txt、日志分析和服务器规则做一次梳理,可以了解广州万户网络的相关服务,咨询电话:13535321113。做好 AI爬虫的管理,等于给网站设好了面向 AI 时代的“门禁”:该开的门开好,该关的门关紧。
需要网站建设、软件开发或爬虫定制?
模板建站1280元起,价格公开不加价。电话/微信 13535321113
