先给结论:把“被发现”当成筛选条件本身就会污染对照。正确做法是按死链检查的触发来源分层,再在每一层内部随机抽取已发现和未发现的页面各一组,而不是拿“已发现”和“未发现”直接对比。下面按两种条件展开,说明什么时候该分层、什么时候该改用同源配对。
如果这批页面只通过一个入口进入检查流程,比如只靠站内链接爬取,那么“被发现”和“未发现”的差异很可能来自链接深度,而不是页面本身的价值。此时应先按链接深度分层:首页直达、二级入口、三级以下、只能靠搜索框到达。每一层里再各抽已发现和未发现页面,这样比较的才是同一深度下的差异。
具体动作:先导出全部待检页面的链接深度,按深度分桶,每桶内按页面类型(文章、产品、标签页、附件页)再切一次。抽取时保证每桶两组数量接近,记录抽样时的桶编号。做完这一步,如果某层两组的表现仍然接近,说明该层可以整体退出或整体保留;如果某层差异明显,就说明这一层的判断需要单独处理,不能套用全站结论。
旧系统里常出现页面没有可追溯的站内入口,只能从日志或站点地图反推。这时深度分层失效,改用同源配对:找两个内容主题、发布时间、模板都接近的页面,一个已发现、一个未发现,成对比较。配对数量不必多,但每对必须满足“除发现状态外其他条件尽量一致”,否则结论会被模板差异带偏。
当页面同时可能被站内链接、站点地图、外部引用、历史重定向等多个渠道触达时,直接按“被发现/未发现”分组会掩盖归因。应该先给每个页面打上“可能触达渠道”的标签,再按标签组合分组。比如“仅站点地图”“仅站内链接”“两者都有”“都没有”。只有同一渠道组合内的对照,才能回答是哪个渠道在起作用。
具体动作:为每个页面记录它出现在哪些渠道清单里,生成渠道组合字段。然后对每个组合内部做已发现与未发现的对照。假设某组合里已发现页面全部来自站点地图,未发现页面从未进入任何清单,那么差异可能只是清单覆盖范围问题,而不是页面质量差异。这个判断会直接影响下一步:是扩大清单覆盖,还是调整页面本身。
站点地图不保证收录,robots.txt 的抓取限制也不等于可靠的索引移除。因此,某个页面出现在站点地图里却未被发现,不能直接判定为页面质量问题;同样,某个页面被 robots 限制抓取,也不能当作它已经被移除的证据。这些现象还有别的合理解释:清单更新延迟、抓取预算分配、页面被其他规则拦截。把它们当作分组依据时,必须标注为“待验证归因”,不能直接写进结论。
判断用哪种方法,看一个信号:发现状态是否与某个可观测的入口变量强相关。如果已发现页面集中在浅层链接,未发现页面集中在深层或孤立页,用分层随机对照;如果已发现页面分散在各个渠道,未发现页面也分散,但渠道组合不同,用归因分组。两者的共同点是都不拿“被发现”本身当自变量。
完成对照后,你会得到每层或每组的“保留/退出”倾向。如果同一层内两组差异小,说明该层可以按统一策略处理,下一步是批量执行退出或保留,并只对例外页面单独复核。如果同一层内差异大,说明该层内部还有未识别的变量,下一步不是扩大抽样,而是回到页面属性表,补录模板、发布时间、内容类型等字段,重新分组。
一个假设例子:某旧站有 800 个待检页面,其中 200 个被发现、600 个未发现。按链接深度分三层后,浅层两组差异很小,深层两组差异明显。此时合理动作是浅层整体保留、深层整体退出,并对深层中少数有外部引用的页面单独标记复核。如果反过来直接按“已发现”保留 200 个,就会把浅层里本可退出的页面一起留下,也会把深层里有价值的页面一起删掉。
最后提醒一点:请求量或抓取量归零不能单独证明某个页面该退出,它只说明该入口当前没有流量,还需要结合对照结果和页面自身价值一起判断。分组只是让判断有依据,不是替你做决定。