先接受一个前提:多数站长工具平台不会把“被中断的扫描”保存成一份可直接续跑的完整进度快照。中断后能拿到的,通常只有已完成部分的导出结果或逐页状态。判断覆盖范围的关键,不是看报告里有多少条记录,而是把“已抓取页面”与“应抓取页面”做一次差集,再决定是重跑、补跑还是直接换用更窄的扫描方式。
打开导出文件或结果表,保留三项最小字段:完整URL、抓取状态、发现来源。抓取状态里要区分“已成功返回内容”“返回错误码”“被规则跳过”“尚未访问”。发现来源则用来判断这条URL是来自站点地图、内链还是外链。
如果工具只给了汇总数字,没有逐页行,那这份结果不足以判断覆盖范围,只能当作参考。此时应回到工具里找“页面列表”“URL明细”一类视图;若确实没有,就把它标记为不可用于覆盖判断,而不是用总数去反推。
应抓集合不是“我以为存在的页面”,而是能被发现的URL。取站点地图里的URL作为主干,再抽取站内导航和正文链接指向的站内URL作为补充。两者合并去重后,得到一份候选清单。
这里有个容易出错的边界:站点地图里列出的URL可能已经失效,内链指向的URL也可能带参数。去重时按去掉跟踪参数后的规范形式归一,否则同一页面会算成两条,差集就不准。
把候选清单与中断结果的已成功URL做差集,得到未覆盖清单。此时不要急着下结论。未覆盖数量偏大,至少有两种合理解释:一是扫描确实只跑了前一部分;二是中断前工具正按某种顺序推进,而候选清单里混入了大量不该抓的URL,比如分页、筛选参数或重复内容。
反过来,如果未覆盖数量很小甚至为零,也不能直接断定“已经覆盖全站”。可能的原因包括:候选清单本身就不完整;工具在中断前已把主要入口抓完但深层页面未展开;或者部分URL被规则跳过却仍计入了成功。需要抽查几条未覆盖清单里的URL,手动打开确认它们是否真实可达、是否返回正常内容。
假设某站点地图声明1200条URL,内链又发现300条不重复URL,合并去重后候选为1400条。中断结果里有900条标记为成功。差集为500条。若抽查发现其中约一半是带筛选参数的重复页,那么真实的未覆盖量接近250条,补跑这250条比整站重跑更省时间。这个数字只是说明比较方法,不代表任何真实项目的结果。
根据未覆盖清单的规模和性质选择动作:
每次动作后都重复一次差集,直到未覆盖清单只剩已知的合理例外。这个循环比“看报告完成度百分比”更能说明实际覆盖到了哪里。
上述方法适用于能导出逐页结果、且候选清单可自行构建的情况。如果所用站长工具平台不提供URL明细导出,或者站点本身存在大量需要登录、依赖脚本渲染才能发现的页面,差集法会明显失真,此时应改用更小的范围分批验证,而不是强行把整站结论套上去。具体工具是否支持这些导出和补跑方式,需要以你实际使用的版本为准去核对。