风语 · 实用指南 · 更新于 2026-10-24
结论:0 命中排查的第一步不是改站,而是先把「0 次」这件事钉死,确认它指的是窗口内所有爬虫都没有请求过这 4 个地址。风语《AI 爬虫命中》数据页记录的是本站 .com.cn 主机 nginx 访问日志,窗口 2026-10-15 00:00:08 至 2026-10-24 00:34:55,共 9 个完整自然日加 34 分钟、110,280 行;4 个页面在这段时间里被所有爬虫命中的次数是 0 次。
这 4 个页面是 /geo/self-traffic-share.html、/geo/traffic-classes-meaning.html、/geo/two-sites-self-traffic.html、/geo/geo-pages-external-visits.html,均为 2026-10-15 06:24 同一批发布。把它们放进全站盘子里看:窗口内 AI 引擎爬虫命中 502 次,落到 393 个不同地址,其中页面类地址 62 个、文件 331 个;sitemap 的 534 条 loc 里只有 43 个被 AI 读过,占 8.05%。0 命中不是孤例,而是大多数 sitemap 页面的常态。
口径要带上:AI 爬虫指用户代理匹配已知 AI 引擎爬虫的一条请求,不论地址是否存在都计数;页面类地址指路径以 .html 结尾、以 / 结尾,或最后一段不含点号的地址。数的是机器抓取,不等于人点的访问,也不等于被收录或被引用;用户代理可伪造,日志只能证明自称身份。
结论:排查顺序的第一项是 HTTP 状态,因为这 4 个页面线上状态都是 200,所以状态码不是 0 命中的原因。状态码异常会让爬虫在门口就退回去,但这一层在这 4 个页面上是通的。
对照全站 AI 命中的状态码分布:200 共 454 次、206 共 32 次、304 共 13 次、403 共 1 次、404 共 1 次、301 共 1 次。也就是说,AI 爬虫在本站拿到的绝大多数响应是正常的 200,4 个 0 命中页面并不处在一个普遍报错的环境里。
状态码这一项全绿,只说明页面能被正常返回,不说明爬虫愿意来。把这一项排除掉,继续往下查。
结论:第二项是 robots 与 noindex,这 4 个页面均无 noindex,robots.txt 也没有拦住它们。robots.txt 在窗口内被 AI 爬虫抓取 42 次,其中 OAI-SearchBot 24 次、Bytespider 16 次、Applebot 2 次,说明爬虫确实读过规则文件,但这 4 页不在被拦之列。
这一项容易被误判成「肯定被 noindex 了」,但检查结果是 4 页均无 noindex。robots.txt 被反复抓取,说明爬虫在按规则做准入判断,而准入判断的结果并不是拒绝这 4 个地址。
排除掉 robots 与 noindex,前两项都全绿,0 命中的原因不在「能不能抓」,而在「来不来抓」。
结论:第三项是站内入站链接,这 4 个页面均在 /geo/ 索引页有链接,所以「页面是孤岛」这个常见解释在这里不成立。站内链接是爬虫发现页面的常规路径之一,这一层也是通的。
把这一项放到栏目层面看更有意义:/geo/ 共 101 页,被 AI 读到 32 页,31.7%;/topics/ 共 285 页,被读 5 页,1.8%;/seo_pages/ 共 76 页,被读 0 页,0%。43 个被读的 sitemap 页面里,32 个来自 /geo/。这 4 个 0 命中页面恰好属于命中率最高的栏目,站内链接并不缺。
链接在、栏目命中率也不低,却仍然 0 次,说明入站链接是必要条件而不是充分条件。
| 栏目 | sitemap 页数 | 被 AI 读到页数 | 命中率 |
|---|---|---|---|
| /geo/ | 101 | 32 | 31.7% |
| /topics/ | 285 | 5 | 1.8% |
| /seo_pages/ | 76 | 0 | 0% |
| 全站 sitemap | 534 | 43 | 8.05% |
结论:第四项查 sitemap 里的 lastmod 是否与页面实际发布时间一致,最后才轮到抓取预算;前四项全绿时,能解释 0 命中的只剩爬虫自己的选择。sitemap.xml 本身在窗口内被 AI 爬虫抓取 16 次,16 次全部来自 GPTBot,说明 sitemap 被读过,但不等于其中每条 loc 都会被排进抓取队列。
抓取预算这一层要看爬虫的实际分配:meta-externalagent 命中 331 次,读到 24 个页面类地址,其中 sitemap 页面 10 个;Bytespider 命中 73 次,读到 2 个页面类地址,其中 sitemap 页面 2 个;GPTBot 命中 65 次,读到 34 个页面类地址,其中 sitemap 页面 32 个;OAI-SearchBot 命中 24 次,读到 0 个页面类地址,只抓 robots.txt;Applebot 命中 6 次,读到 3 个页面类地址,其中 sitemap 页面 1 个;Amazonbot 命中 3 次,读到 3 个页面类地址,其中 sitemap 页面 1 个。六者相加 502 次。
页面类请求只占全部 AI 命中的 15.5%(78 ÷ 502),文件请求占 84.5%(424 ÷ 502)。预算大量落在文件上,页面能分到的抓取机会本来就有限,这是 0 命中排查走到最后一步时必须承认的背景。
| 排查顺序 | 检查项 | 这 4 页的结果 |
|---|---|---|
| 1 | HTTP 状态 | 4 页均 200 |
| 2 | robots 与 noindex | 4 页均无 noindex |
| 3 | 站内入站链接 | 4 页均在 /geo/ 索引有链接 |
| 4 | sitemap 的 lastmod | 需与发布时间核对 |
| 5 | 抓取预算 | 爬虫选择,非站点可控 |
结论:四项全绿也不保证被抓,抓取是爬虫的选择。这 4 个页面线上 200、在 sitemap、在 /geo/ 索引有链接、无 noindex,窗口内所有爬虫(含 Googlebot、Bingbot)对它们的命中仍是 0 次,说明排查顺序能排除站点侧原因,但不能替爬虫做决定。
同一批发布的 28 个 /geo/ 页面里,24 个被 AI 爬虫抓过,4 个一次没被抓过,0 命中的正是这 4 个。被抓的 24 个首抓全部是 GPTBot、全部发生在发布当天,首抓间隔 0.74 至 6.87 小时。同栏目、同批次、同一天发布,结果分成两半,差别不在页面配置。
所以正确的预期是:排查顺序用来确认「站点没有挡住爬虫」,而不是用来保证「爬虫一定会来」。0 命中在 534 条 sitemap 里是多数状态,43 个被读页面只占 8.05%。
结论:0 命中排查最常见的错误,是把「四项全绿」当成「一定会被抓」,或者在站点侧反复改动,而忽略了抓取本身是爬虫的选择。
| 坑 | 典型表现 | 应对 |
|---|---|---|
| 把 0 命中当成被惩罚 | 看到 4 页 0 次就断言降权 | 先按 HTTP 状态、robots 与 noindex、站内入站链接、sitemap 的 lastmod、抓取预算逐项排除,不跳到惩罚结论 |
| 只看 sitemap 有没有提交 | 以为 sitemap.xml 被读就等于每条 loc 被读 | sitemap.xml 被 AI 抓取 16 次全部来自 GPTBot,但 534 条 loc 只有 43 个被读,提交与抓取是两件事 |
| 忽略栏目命中率差异 | 拿全站 8.05% 套到单个栏目 | /geo/ 31.7%、/topics/ 1.8%、/seo_pages/ 0%,先看页面所在栏目的基线再判断异常 |
sitemap 里的页面 AI 一次都没抓过,最先查什么?先查 HTTP 状态,再查 robots 与 noindex、站内入站链接、sitemap 的 lastmod,最后才看抓取预算。这 4 个 0 命中页面线上均 200、均无 noindex、均在 /geo/ 索引有链接,前三项全绿,说明问题不在站点挡住爬虫。
四项检查都通过,为什么 AI 爬虫还是不来?因为四项检查只证明页面可被抓,不证明爬虫会抓。窗口内 sitemap 的 534 条 loc 只有 43 个被 AI 读过,占 8.05%;页面类请求只占全部 AI 命中的 15.5%,抓取机会本身就有限,来不来是爬虫的选择。
同栏目同批发布的页面,为什么有的被抓有的 0 次?28 个 /geo/ 新页面里 24 个被 AI 爬虫抓过、4 个一次没被抓过,被抓的 24 个首抓全部是 GPTBot 且都在发布当天。同栏目同批次结果分成两半,差别不在页面配置,而在爬虫当轮的抓取选择。
0 命中能不能说明页面被惩罚或降权?不能。这 4 个页面线上 200、在 sitemap、有站内入站链接、无 noindex,窗口内所有爬虫 0 次命中,只能说明爬虫没有选择它们;日志数的是机器抓取,不等于被收录或被引用,也不构成惩罚或降权的证据。
同簇阅读:sitemap 里 534 条链接,AI 爬虫九天内读了几条? | AI 爬虫抓一个站,为什么抓了 331 个文件却只读了 62 个页面? | 新页面发布后,AI 爬虫多久来抓第一次?28 个页面的首抓间隔实测
数据出处:风语《AI 爬虫命中》数据页(公开数据页,当场打码 HTTP 200) 风语《公开数据总览》数据页(公开数据页,当场打码 HTTP 200)