先看中断发生在哪一层:如果工具是边抓取边输出结果,已产出的条目通常可以按URL去重后当作部分覆盖;如果任务在结束时才统一写入报告,中断往往意味着这一批没有留下可用结果。判断覆盖范围的关键不是看进度条停在百分之几,而是找到可核对的已完成清单,再和站点实际URL总量做差集。差集小且集中在低价值页面时可以继续用这批数据;差集大或落在核心栏目时应当重跑或补扫,而不是直接拿残缺结果下结论。
不同工具对中断的处理方式不同,这决定了你手里到底有没有可用的中间结果。可以先用一个小动作验证:在任务中断后查看结果列表是否包含最后抓取的若干条URL,并检查这些URL的抓取时间是否递增。如果时间递增且条目连续,说明是流式写入,已落盘部分基本可信;如果结果为空或只有任务开始时的快照,说明是批处理模式,中断等于整批作废。
这个判断会影响下一步:流式输出可以走补扫路线,只针对缺失URL重跑;批处理模式则要考虑整站重跑,或者把任务拆成按栏目、按目录的多个小批次,避免再次因为单点失败丢掉全部进度。
把已完成的URL列表导出,和你能拿到的站点URL来源做对比。常见来源包括:XML站点地图中的URL、栏目页和分页链接可到达的URL、以及日志或后台中实际产生过访问的URL。这三类来源覆盖范围不同,站点地图偏声明,内链偏可达,访问日志偏真实触达,三者取并集更接近真实需要扫描的范围。
做差集时建议按目录聚合,而不是逐条比对。假设站点有产品、文章、标签三类目录,已扫描结果里产品目录覆盖八成、文章目录覆盖三成、标签目录几乎为零,那么缺口集中在内容和标签层。此时如果本次查询的目标只是检查产品页的标题和描述,缺口不影响结论;如果目标是全站索引健康度,就必须补齐文章和标签部分。这个例子只用于说明比较方法,具体比例需要按你自己的数据计算。
条件一:缺口集中在已下线、低流量或重复内容的页面,且核心栏目已完整覆盖。此时可以沿用现有结果,但要在记录中标注“覆盖不完整”,后续涉及全站汇总的指标不要直接引用。
条件二:缺口落在首页、主要栏目、近期改版页面或你本次要重点检查的URL上。此时不应沿用,应优先补扫这些URL,再决定是否需要整站重跑。
区分这两种条件的证据来自差集分布,而不是中断时的进度百分比。进度百分之九十但缺的正好是首页,和进度百分之五十但缺的是归档页,处理方式完全不同。
补扫不要直接重跑整站,先按缺失目录生成一批URL,控制单批数量,观察这批是否能完整跑完。
如果补扫顺利完成,说明中断是偶发资源问题,可以继续按批次推进;如果补扫在同一位置再次中断,说明该目录可能存在超时、重定向链过长或单页体积异常等情况,这时应先抽查这些URL的响应状态,而不是反复重跑。补扫结果还会影响你对整体数据的信任度:合并后覆盖率接近完整,可以进入分析;仍存在明显缺口,则任何全站维度的结论都应暂缓。
每次中断后都留下三段信息:中断时间与任务参数、已完成URL的导出文件、缺口目录清单。这样下次查询时可以直接对比,而不是重新猜覆盖范围。记录里同时注明本次扫描的目标是什么,因为同一个缺口对不同的查询目标意义不同。工具的具体中断处理机制、是否支持断点续扫、单批上限等,需要以你所使用工具的当前说明为准,不同工具差异较大,不宜直接套用。
判断覆盖范围的核心始终是差集,而不是进度条。能说清缺了哪些URL、这些URL属于哪一层,才能决定是沿用、补扫还是重跑。