跳到正文
概念 · 基础设施

AI 爬虫

速览要点

它是什么
爬虫层的全景图:代表某个 AI 系统来抓取你页面的自动化程序,范围限定在会改变 AI 可见度的那几类用途
最关键的区分
三类用途,访问后果彼此相反:训练类喂养权重,检索类支撑实时答案并构建答案索引,用户触发类只服务单次查询
访问规则
按类别决定,而非按单个爬虫,也不是非黑即白。挡住训练类不会挡住检索类;挡住检索类会让你立刻从 AI 答案里消失
代价最高的失误
对所有 AI 爬虫一律 Disallow:为挡训练而牺牲引用。「全部封禁」并不是最安全的默认做法,反而是代价最高的那一种
它的位置
可检索性这道关卡:答案循环(answer loop)第 2 步,位于可引用性之前。必要但不充分:能被抓到不等于能被采信引用

1. AI 爬虫是什么

AI 爬虫,是代表某个 AI 系统来抓取你页面的自动化程序。真正有用的区分维度是角色,而不是用户代理

定义(GEO Wiki 工作定义):所谓 AI 爬虫(AI crawler),是代表某个 AI 系统来抓取你页面的自动化程序,范围限定在会改变你 AI 可见度的三种角色(训练、检索、用户触发),而非「一切非人类的用户代理」。

每个爬虫的细节(精确的 UA 字符串、IP 段、确切的屏蔽写法)见 GPTBotClaudeBotPerplexityBot;写策略与查日志的实操见 AI 爬虫访问审计 playbook;爬虫到达后能否读到页面见 SSR for AI Crawlers

2. 三类用途:最关键的区分

训练 ≠ 检索 ≠ 用户代理,三者的访问后果彼此相反。把它们混为一谈,正是代价最高的那类失误的来源。

                         ┌──────────────► 训练类爬虫
                         │                 (GPTBot、ClaudeBot、
                         │                  Google-Extended)
                         │                 → 喂养/微调模型权重;
                         │                   滞后、参数化、
                         │                   无法归因
   同一个源页面 ─────────┤
   因三种原因被抓取       │
                         ├──────────────► 检索类爬虫
                         │                 (OAI-SearchBot、
                         │                  PerplexityBot、
                         │                  Claude-SearchBot)
                         │                 → 支撑实时答案并
                         │                   构建答案索引;
                         │                   即时、带引用

                         └──────────────► 用户触发类程序
                                           (ChatGPT-User、
                                            Claude-User、
                                            Perplexity-User)
                                          → 某个用户此刻正
                                            问到你的 URL

直接说结论:访问决策按类别做出,而非按单个爬虫,也不是非黑即白。 挡住训练类不会挡住检索类;挡住检索类会让你当下就从 AI 答案里消失。

它在循环里的位置:这是可检索性这道关卡,对应 答案循环(answer loop) 第 2 步(先成为候选),严格在 可引用性——被抓到之后还要能被采信。

3. 类别 × 爬虫的标准表

每个爬虫的具体细节(UA 字符串、IP 核验、确切屏蔽写法)见各自条目。爬虫名册更替很快,本表每次复审都对照官方文档重新核对。

类别为什么抓取屏蔽它你会损失屏蔽它你能保护代表性爬虫
训练类采集可能用于训练/微调模型权重的内容你的内容进入未来模型权重后形成的「参数记忆」;效果滞后且无法归因让你的内容不进入未来模型权重GPTBot · ClaudeBot · Google-Extended · CCBot · Applebot-Extended · Amazonbot · Meta-ExternalAgent · Bytespider
检索类支撑实时答案,并构建答案引擎索引当下的引用:你会立刻从 AI 答案里消失;效果即时几乎没有:训练大多已经发生,或通过其他语料发生OAI-SearchBot · PerplexityBot · Claude-SearchBot · Googlebot(驱动 AI Overviews,无法单独屏蔽)· Bingbot(驱动 Copilot)
用户触发类某个用户此刻刚粘贴或问到你的 URL那个用户对你这一页的实时查询会在答案中途失败没有任何自动行为:它们只在有人操作时才取页ChatGPT-User · Claude-User · Perplexity-User

这种不对称值得停下来看一眼:屏蔽训练类,失去的是未来的参数记忆,但保住了引用;屏蔽检索类,失去的是当下的引用,而训练大多已经发生,或通过其他语料发生。二者不是可以互换的开关。

各平台对应的检索类爬虫:ChatGPT 搜索(OAI-SearchBot + ChatGPT-User)、Perplexity(PerplexityBot + Perplexity-User)、Claude(Claude-SearchBot + Claude-User)、Google AI Overviews(Googlebot;Google-Extended 只管控训练用途,不管控抓取,见 Google’s common crawlers)、Bing Copilot(Bingbot)。每个爬虫的 UA 字符串和 IP 核验见各自条目。

4. 用户代理是一种声称,不是身份

用户代理字符串是自我声称的,极易伪造:日志里看到 GPTBot,不等于 OpenAI 抓了这一页。一套只认未经核实 UA 的策略,既会误伤被冒名的好爬虫,也防不住伪造的坏爬虫。

身份实际上要靠**公布的 IP 段加上前向确认反向解析(forward-confirmed rDNS)**来确立。主要运营方为此都公布了机器可读的 IP 列表:OpenAI 按爬虫提供 .json IP 文件(见 Overview of OpenAI Crawlers);Anthropic 公布爬虫 IP 列表(见 Anthropic 爬虫文档);Perplexity 按爬虫公布 IP JSON(见 Perplexity Crawlers)。

下面给一段最小、通用的核验示例,讲的是原理

# 前向确认反向解析(forward-confirmed rDNS):讲原理,不是某个爬虫的具体写法
1. 对请求 IP 做反向解析            → 主机名
2. 对该主机名做正向解析            → IP
3. 第 2 步的 IP == 请求 IP  且  主机属于运营方域名
   → 身份确认;否则 → 该 UA 视为未经核实

每个爬虫的 IP 段、确切的反向解析域名、可运行的核验脚本,见各自的爬虫条目与 AI 爬虫访问审计 playbook。一个新兴的替代方向是密码学化的爬虫认证,即面向自动化流量的 HTTP 消息签名(IETF draft-meunier-web-bot-auth-architecture),用一个签名身份取代靠 IP 或 UA 推测的做法。它目前还只是一份没有正式 IETF 地位的 Internet-Draft,应当视为一个方向,而不是今天可以依赖的控制手段。

5. 证据怎么说:声明的控制 ≠ 实际的强制

robots.txt 是一个自愿性的请求,而非访问控制机制。 RFC 9309 明确写道,其中的规则「不是一种访问授权形式」,并且该协议「不能替代有效的内容安全措施」(见 RFC 9309)。

「我已经 Disallow」与「它真的停了」之间,存在一道有据可查的落差。两个公开案例足以说明这条原理:2024 年,多家新闻媒体报道一家主流答案引擎抓取了那些已明确禁止其爬虫的站点(TechCrunch,2024-07-02);2025 年,Cloudflare 报告有一个未声明的爬虫伪装成普通浏览器、轮换 IP,在数以万计的域名上规避禁抓指令(Cloudflare,2025-08-04)。针对具体爬虫的来龙去脉见 PerplexityBot

成立的部分该如何审慎解读
主流的第一方爬虫会按其文档声明遵守 robots.txt遵守是一项声明的政策,不是技术保证
robots.txt 能毫不含糊地表达你的意图意图 ≠ 强制;不合规或伪造的程序根本不理它
存在独立的测量Cloudflare 发现,抽样域名里只有约 14% 的 robots.txt 文件针对了 AI 爬虫(Cloudflare,2025-07-01):多数站点根本没表达任何策略
强制是可能的但那是网络层问题(WAF、已核验爬虫名单),不是 robots.txt 的问题

在 robots.txt 里写策略是值得的,因为合规爬虫会遵守它。但要记住,声明的控制不等于强制:协议机制本身见 robots.txt,怎么核验真正到达你的是什么见 AI 爬虫访问审计

6. 反模式:屏蔽何时反伤自己

下面每一个反模式都看起来没错,却因为混淆了类别、机制或默认做法而失败

反模式为什么看起来对为什么实际会失败
对所有 AI 爬虫一律 Disallow: /「保护内容不被 AI 拿走」为挡训练而牺牲引用:弄错了类别,可见度永久且即时丢失。这是头号失误
屏蔽 GPTBot「以退出 ChatGPT」GPTBot 是 OpenAI 的爬虫ChatGPT 实时答案用的是 OAI-SearchBot / ChatGPT-User;GPTBot 只负责训练。认错了爬虫
把 robots.txt 当成对坏行为者的强制「我已 Disallow,它就不能抓」robots.txt 是自愿请求(§5);伪造或不合规的程序完全不理它
放行所有爬虫,但页面是纯 CSR「访问已经开放」抓到了却读不到,访问这一关的成果作废。见 SSR for AI Crawlers
静态白名单,从不复查「只放我信任的爬虫」新爬虫每季度都在出,白名单会把它们默认悄悄排除

核心结论:「全部封禁 AI」不是最安全的默认做法,而是代价最高的默认做法。 屏蔽是一项以引用为代价、按类别做出的利弊权衡,不是一项例行的基础维护动作。OpenAI 明确表示,要在 ChatGPT 搜索里出现并被引用,前提就是不屏蔽它的检索爬虫(见 Publishers and Developers FAQ)。

7. SEO 爬虫 vs AI 爬虫:不变的基线 vs 变了的部分

共用基线沿用 SEO vs GEO。抓取基线不变,变的是访问逻辑

不变的那部分(在「绝不丢弃」清单上):可达、返回 200、不软 404、保持合理的抓取预算和干净的状态码。这正是 Googlebot 一直需要的那套基线,AI 爬虫原样继承。

维度SEO 爬虫时代AI 爬虫时代(变化)
程序数量实际上只有一个要紧的(Googlebot)很多个,且持续不断地出新
访问语义一个「索引与否」的决策一个训练 / 检索 / 用户触发的三分,且后果相反
robots.txt既是声明的控制,是被强力遵守的规范仍是声明的控制,但是一条遵守更弱的规范(§5)
「提交进索引」存在(站点地图、ping)部分存在:存在的那部分见 Sitemap 与 IndexNow

陷阱在于:把 SEO 的旧心智模型(一个 robots.txt 决策,且被强制执行)套到一个已经变成「很多爬虫、三个类别、遵守很弱」的层上。

8. 这对 GEO 为何重要,以及如何行动

能被抓到是必要但不充分的:它只让你成为候选。下一道关卡是被抓到之后还能被采信引用,详见 可引用性

你的意图从这里开始
核验真正到达我站点的是什么AI 爬虫访问审计
写访问策略robots.txt · llms.txt
拿到某个爬虫的具体写法(UA、IP、屏蔽)GPTBot · ClaudeBot · PerplexityBot
让抓到的页面可读SSR for AI Crawlers
可检索之后的下一道关卡可引用性
把这一切串起来的方法论生成式引擎优化

三件事记牢:屏蔽是按类别做出的利弊权衡,核验属于网络层,可读性属于渲染层。

参考资料

官方爬虫文档(截至 2026-05):

协议与标准:

独立测量与报道:

常见问题

什么是 AI 爬虫?
代表某个 AI 系统来抓取你页面的自动化程序。对 GEO 而言,有用的定义被收窄到会改变你 AI 可见度的三种角色(训练、检索、用户触发),而不是「一切非人类的用户代理」。
我该不该屏蔽 AI 爬虫来保护内容?
只能逐类别决定,绝不能当成一刀切的例行维护。屏蔽训练类(GPTBot、ClaudeBot、Google-Extended)能让内容不进入未来模型权重,同时保住引用;屏蔽检索类(OAI-SearchBot、PerplexityBot、Claude-SearchBot)会让你立刻从 AI 答案里消失。一律 Disallow 是用第二种代价去换第一种目的,并不是最安全的默认做法,反而是代价最高的那一种。
屏蔽了 GPTBot,是不是就退出 ChatGPT 了?
不是,这正是经典的「认错爬虫」失误。GPTBot 只负责训练。ChatGPT 的实时答案由 OAI-SearchBot(检索索引)和 ChatGPT-User(用户触发取页)提供。屏蔽 GPTBot 只是让你的内容不进入训练数据,ChatGPT 搜索里的引用完全不受影响。
robots.txt 真能挡住 AI 爬虫吗?
robots.txt 是一个自愿性的请求,而非访问控制。RFC 9309 本身就写明,其中的规则「不是一种访问授权形式」。主流的第一方爬虫会按其文档声明遵守它,但遵守是一项政策,不是技术保证;而自我声称的用户代理字符串极易伪造。对不合规或伪造程序的强制,是网络层的问题,不是 robots.txt 能解决的。
日志里看到「GPTBot」,就能证明是 OpenAI 抓的吗?
不能。用户代理字符串是一种自我声称,不是身份。身份要靠公布的 IP 段加上前向确认反向解析来确立:OpenAI、Anthropic、Perplexity 都为此公布了 IP 列表。一套只认未经核实 UA 的策略,既会误伤被伪造的好爬虫,也防不住伪造的坏爬虫。

延伸阅读

参考来源

一手来源

  1. Overview of OpenAI Crawlers (GPTBot / OAI-SearchBot / ChatGPT-User) · OpenAI
  2. Publishers and Developers FAQ — OpenAI Help Center · OpenAI
  3. Does Anthropic crawl data from the web, and how can site owners block the crawler? · Anthropic · 2026-04-07
  4. Perplexity Crawlers (PerplexityBot / Perplexity-User) · Perplexity AI
  5. Overview of Google crawlers and fetchers (user agents) · Google Search Central · 2026-02-09
  6. Google's common crawlers (Google-Extended) · Google Search Central · 2026-04-23
  7. Which crawlers does Bing use? · Microsoft Bing
  8. RFC 9309: Robots Exclusion Protocol · IETF · 2022-09-01

二手来源

  1. Perplexity is using stealth, undeclared crawlers to evade website no-crawl directives · Cloudflare
  2. News outlets are accusing Perplexity of plagiarism and unethical web scraping · TechCrunch
  3. From Googlebot to GPTBot: who's crawling your site in 2025 · Cloudflare
  4. HTTP Message Signatures for automated traffic: Architecture (draft-meunier-web-bot-auth-architecture) · IETF (Internet-Draft)

三手来源[观察]

  1. Anthropic's Claude bots make robots.txt decisions more granular
最近更新: 2026-05-18 作者: Ray Yang 主题: 基础设施