先区分两种断点:一是抓取层根本没走到深层,二是走到了但内容没被当成可索引的独立页面。入口正常只说明首页或栏目页可访问,不代表深层链接被允许进入、被正确解析。最有效的动作是拿一条具体深层 URL,在收录检查工具里看它的“已发现/已抓取/已索引”状态,再用服务端日志核对抓取时间与返回状态。如果工具显示“已发现但未抓取”,断点在抓取调度或链路可达性;如果显示“已抓取但未索引”,断点在内容质量或页面自身信号。
这种组合最容易被误判成全站没问题。入口页被频繁抓取,会让人以为爬虫已经熟悉站点结构,但深层页的“已发现未抓取”往往指向另一条路径被切断。常见原因是深层链接只存在于需要交互才能展开的组件里,或者入口页到深层的跳转依赖脚本执行,而抓取阶段没有执行到那一步。
另一个可能:深层链接虽然出现在站点地图中,但站点地图里的 URL 与页面实际返回的规范地址不一致。站点地图只负责提交线索,不保证收录,也不保证爬虫会优先处理其中每一条。若站点地图提交后长期没有抓取变化,应把它当成线索未被采纳,而不是收录成功。
要区分这两者,先看深层 URL 的直接返回。用抓取工具或命令行请求该 URL,观察返回状态码、响应头和最终地址。如果返回 3xx 链过长、404、403,或最终落到入口页,断点在链路可达性。此时收录检查工具里的“已发现未抓取”只是结果,不是原因。
如果直接请求返回 200,且内容与预期一致,则断点更可能在可索引判断上。需要继续核对:该页面是否被 robots.txt 限制抓取、是否带有 noindex、规范地址是否指向别的页面、正文是否只在脚本执行后才出现。robots.txt 的抓取限制不等于可靠的索引移除,它只阻止抓取,已索引的旧页面仍可能保留;反过来,解除限制后也不保证立即恢复。
这三个信号要一起看,不能只看其中一个。例如日志有请求、工具显示已抓取、但正文为空壳,这时断点在渲染与内容呈现,而不是链接发现。
假设某站点入口页和分类页均正常,一条深层文章页直接请求返回 200,正文在浏览器中可见,但收录检查工具长期显示“已抓取未索引”。此时先检查该页的规范地址是否被模板错误地指向分类页,再检查是否有 noindex 响应头被中间层附加。若两者都正常,再对比同模板下已被索引的页面,看差异是否在正文长度、唯一信息量或内链数量上。这个对比只能说明相关性,不能直接证明因果,但能帮助决定下一步是改模板信号还是补内容。
动作与结果的关系:如果修正规范地址后,下一次抓取记录中出现该 URL 且状态从“已抓取未索引”转为可索引,说明断点确实在规范信号;如果状态不变,则应回到链路发现层继续排查,而不是反复提交站点地图。
每一步的结果决定下一步方向:状态码异常先修服务端,状态正常但内容空壳先修渲染,内容正常但规范错误先修模板信号。不要在所有层同时改动,否则无法判断是哪一处真正影响了收录。