判断采集是否遗漏,核心不是看某个总数,而是把“应该被处理的URL集合”和“实际被处理的URL集合”做一次可回溯的比对。只要你能拿到两份清单并找出差集,遗漏就能被定位,而不是靠感觉猜。对时间和人手有限的情况,最关键的一步是先固定一份基准清单,再拿它去比对,而不是先翻日志。
遗漏是相对某个范围而言的。范围没定,比对就没有意义。基准清单可以来自以下几种可核对的来源:
把这几类合并去重后,得到一份基准清单。注意第三方估算流量、搜索引擎报告与站内统计口径不同,它们各自的数字不能直接当成“应该采集的总数”。基准清单只回答“有哪些URL存在”,不回答“搜索引擎收录了多少”。
拿到基准清单后,再取一份“实际被处理”的清单,两者做差集。实际清单可以来自抓取工具的已访问列表、日志中出现的URL,或站点地图提交记录。比对时按URL规范化后的形式进行,避免因大小写、末尾斜杠、参数顺序造成假遗漏。
一个可执行的短例子(假设场景):基准清单有1000条URL,实际处理清单有940条,差集为60条。这60条就是候选遗漏项。但差集不等于最终结论,还要逐条判断:
只有排除掉“本就不该处理”的URL后,剩下的才是真正需要修复的遗漏。这一步是本题最关键的一步:不先做差集,后面所有优化都缺少靶子。
找到候选遗漏项后,要区分两种可能:一种是抓取阶段就没访问到,另一种是访问了但没被索引。判断方法如下:
一项现象可能有多个解释,不要断言唯一原因。例如某页面未被收录,可能是抓取遗漏,也可能是内容质量判断,还可能是规范标签指向了别的URL。验证的目的是缩小范围,而不是一次定论。
遗漏不是一次性问题。新内容上线、旧链接改版、分页规则调整,都会产生新的差集。人手有限时,不必每次都全量比对,可以固定几个检查项:
维护阶段的目标是让差集保持稳定且可解释,而不是追求零差集。有些URL本就不需要被采集,把它们标记为“已知例外”比反复排查更省人力。
下一步:从你手头最完整的一份URL来源出发,导出基准清单,再导出实际处理清单,先算出差集数量。这个数字会直接告诉你,当前最该处理的是抓取路径问题,还是索引层面的问题。