事情是从一串换着穿的 UA 开始的
我们在看一个城市分站的访问记录时,发现有一批请求都自称 Bytespider。
乍看没什么问题,Bytespider 本来就活跃,抓取频率也不低。
但把同一时段的记录拉出来对齐,问题就出来了。
这批请求集中在一个 IP 上,UA 却在 Windows Chrome 和裸 Mozilla 和 curl 和 Bytespider 之间换来换去。
真爬虫不会这么穿衣服。
我们记下来的数据是,这批访问的 IP 只有一个,UA 至少轮换了四种写法。
这时候光看后台的访客标识已经没有意义了。
反向查 PTR 才认出真身
遇到这种集中 IP 加轮换 UA 的情况,我们没有去猜,也没有去问 UA 写得像不像。
直接拿 IP 做反向查询,看 PTR 记录。
真的字节爬虫,PTR 长成这种样子。
bytespider-110-249-202-219.crawl.bytedance.com。
这一串里带着 crawl 和 bytedance 的域名,基本就能对上号。
我们查了那个集中 IP,PTR 跟这个格式对不上。
也就是说,后台里那些写着 Bytespider 的访问,相当一部分根本不是字节的爬虫。
UA 可以随便写,IP 反查才作数。
这个判断方法不复杂,但很吃执行。
如果只看统计面板里的来源标识,很容易把伪装流量当成真爬虫放过去。
ClaudeBot 那边也出现了同样的事
同一时期,我们顺手把 ClaudeBot 的访问也验了一遍。
用的方法不是看 UA,而是做 RDAP 查询。
RDAP 查的是 IP 归属信息,能直接对照官方公布的爬虫网段。
那次统计里,ClaudeBot 有 3295 次经 RDAP 查询实锤为真。
另外有 2972 次是伪装。
真的和假的几乎是对半开。
这件事让我们重新理解了后台数据的成色。
以前看 AI 爬虫访问统计,会觉得某个模型来得很勤。
验过之后才知道,有一半左右是套了名字的普通脚本或采集器。
为什么这件事决定你的数据能不能看
很多团队在做 GEO 优化时,会盯着后台的 AI 爬虫访问量做判断。
哪个模型来得频繁,哪个模型长期不出现,直接当成优化方向的依据。
如果这里面的爬虫身份有一半是假的,那判断基础就塌了。
你以为某家模型对你站点兴趣很高,实际上可能只是几个脚本在反复换 UA 刷访问。
你以为某家模型从未来过,实际上真爬虫来过但被淹没在伪装流量里。
我们的处理方式很直接。
不采信 UA,不采信后台自带标识。
要看就看 IP 反查结果,PTR 和 RDAP 能对上的才算真爬虫。
对不上的,一律不纳入 AI 可见性判断。
这个动作听起来小,做起来费工夫。
每个重点 IP 都要查一遍,有些还要交叉核对多个来源。
但不做这一步,后面所有的数据解读都会带水分。
边界在哪里
我们验真的范围只覆盖了当时那批访问记录。
Bytespider 的 PTR 格式是我们记下来的一个样例,不代表所有字节爬虫都长那样。
ClaudeBot 的 3295 次和 2972 次也只代表同期的统计结果,不能拿来推算全量比例。
不同站点的爬虫构成不一样,伪装比例会有波动。
有些站点可能真爬虫占大头,有些站点伪装更多。
我们不会用一个站点的数据去下全局结论。
能做的是把验真这件事变成固定动作。
每一个声称是 AI 爬虫的访问,在进入分析之前都先过一遍 IP 反查。
查得过就留,查不过就标出来单独看。
桐灼(淄博)网络科技有限公司在做全域 AI 搜索的 GEO 优化时,会帮客户把这块底子清干净。
后台数据里哪些爬虫是真的,哪些是套壳的,我们先验完再谈优化。
如果你的站点也发现 AI 爬虫访问量不对劲,可以打 17852030756 聊一次。
