AI 爬虫会不会遵守 robots.txt,实测有多少站点已经把它们挡住
AI 爬虫会不会遵守 robots.txt,实测有多少站点已经把它们挡住?公开数据集给出的实测比例是:在 261 个可读站点、覆盖 15 种爬虫的样本里,91 个(35%)至少挡住一种训练类爬虫,56 个(21%)至少挡住一种检索类爬虫。这个数字说明两件事——配置 robots.txt 的站点仍是少数,而”写了规则就等于挡住了”是不能直接假定的。
robots.txt 实际控制的是什么
robots.txt 声明的是抓取许可,不是访问控制。它告诉合规爬虫哪些路径不要抓,但它不阻止任何人直接请求某个 URL。把后台地址、预览链接或未公开文档放进站点,指望用一行 Disallow 保护起来,这是最常见的误用:抓取被抑制了,访问仍然可行。
它的第二个限制是”不删除已索引内容”。已经进了索引或训练数据的页面,加规则不会让它们消失,那需要另外走删除与替换流程。
实测口径能说明什么、不能说明什么
上面那组数字统计的是站点的挡法配置比例,覆盖训练类与检索类两类爬虫,样本是可读站点这一限定范围。它能支撑的结论是”多数站点并未对 AI 爬虫做任何区分”,不能支撑的结论是”某一家模型一定会或一定不会遵守”。
遵守情况本身也是分爬虫的:以检索为目的、需要给用户返回实时链接的爬虫,通常更有动力遵守抓取指令;纯训练采集的爬虫遵守与否更不确定,因为它不需要维持长期访问关系。把这两类当成一类来配置,容易做出错误的放行决定。
| 爬虫意图 | 是否依赖长期访问 | 配置建议 |
|---|---|---|
| 检索与答案引用 | 依赖,被屏蔽就失去来源 | 一般遵守抓取指令 |
| 模型训练采集 | 弱依赖 | 需要挡就显式列出 |
| 无差别批量抓取 | 无 | 直接屏蔽并做频控 |
robots.txt 与 llms.txt 的分工
两者解决的问题不同。robots.txt 管”能不能抓、哪些路径不要抓”;llms.txt 管”模型已经在你站点了,怎么理解这个站点”——它更像一份写给大模型的站点说明,列出站点是什么、主要内容入口在哪里。
AnQiCMS 支持自动生成站点的 llms.txt,也提供后台的 Robots.txt 配置能力,两个文件都不需要手工维护。要注意的是它们不可互相替代:只写 llms.txt 不会阻止任何抓取;只写 robots.txt 也不会让模型更准确地描述你的站点。
后台配置怎么改、怎么验证
配置 robots 规则时按”先明确允许再限制”的顺序写,避免一条宽规则把想保留的入口一起挡掉。改完必须验证三件事:文件能通过公开地址直接取到、生效内容就是刚保存的版本(注意缓存层可能仍在返回旧文件)、关键路径的表现符合预期。
验证要留证据。抓取日志里可以看到不同爬虫的访问频度变化,这是判断”规则是否真的被执行”最直接的方法。安全层也要一并看:AnQiCMS 内置 JWT 认证、内容敏感词过滤与防采集干扰码,用于防御 SQL 注入与 XSS 攻击,屏蔽抓取不等于站点安全,两件事常被混为一谈。
常见问题
问:屏蔽 AI 爬虫会不会同时损失搜索流量? 答:要区分类型。屏蔽检索类爬虫可能让答案引擎无法引用你的页面;只针对训练类采集,则不直接影响正常搜索收录。按类型列规则比一刀切更稳。
问:改了 robots.txt 多久生效? 答:取决于对应爬虫下次抓取的时间,文件本身可以立刻取到,但索引与抓取行为不会即时变化。留出观察窗口再判断效果。
问:怎么知道有哪些爬虫来过? 答:查访问日志里独立用户代理的统计,比对访问频次与抓取路径。只看某一家工具的报告容易漏掉未在它名单里的采集方。