网页快照查询:一次全站扫描被中断后怎样判断已覆盖范围

📍 WDQWDWQD987AAAAA:216.73.217.162
📱 Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
🔗 /c72c4d408e56.html
📄

网页快照查询:一次全站扫描被中断后怎样判断已覆盖范围

先看结论:中断后不要用“已扫到多少条”下判断,而要把任务日志、结果清单和抽样复核三样东西对齐。三者能互相对上的部分才算已覆盖;对不上的部分只能标为未知,不能算完成。最危险的情况是结果清单看起来很长,但日志显示中断发生在列表页抓取阶段,此时长清单往往只覆盖了前几页的浅层链接。

矛盾现象:结果数量很大,但覆盖可能很浅

全站扫描被中断后,最常见的矛盾是结果条数远超预期,直觉会认为扫描接近完成。实际更可能是两种解释之一。

这两种解释对“已覆盖范围”的含义完全不同:前者覆盖很浅,后者覆盖已接近完整。只凭结果条数无法区分,需要找能分开它们的证据。

用任务日志区分两种解释

任务日志是判断中断位置的第一手依据。重点看中断前最后一条记录的类型,而不是总条数。

  1. 如果最后若干条是列表页、分类页或分页地址,说明扫描停在广度扩展阶段,深层内容基本未覆盖。
  2. 如果最后若干条是详情页,且队列里剩余的是同类详情页,说明覆盖已进入深度阶段,中断影响的是收尾而非主体。
  3. 如果日志在某个域名或目录下反复出现同一类地址,说明可能陷入循环或参数膨胀,此时“已覆盖”要按去重后的唯一地址重新计算。

一个可操作的动作是:从日志中截取中断前最后五十条记录,按页面类型分类计数。如果列表页占比高,就把已覆盖范围下调为“入口层”;如果详情页占比高,再进入下一步抽样复核。这个分类结果直接决定后续是重扫还是补扫。

抽样复核:用可核对的证据确认边界

日志只能说明工具认为处理过什么,不能说明结果是否有效。抽样复核要选能代表不同深度的页面,而不是随机挑。

假设某次扫描中断后清单有八千条,抽样发现其中六成集中在三个栏目,另外两个主要栏目完全缺失。此时合理的结论是覆盖范围约为站点主要栏目的一半,而不是“已完成八成”。这个判断会直接影响下一步:缺失栏目需要单独补扫,已覆盖栏目可只做增量核对。

中断后怎样给出可用的覆盖结论

把日志、清单和抽样结果合并后,覆盖范围应写成带条件的区间,而不是单一数字。

按这个分类整理后,如果“无法判定”占比偏高,说明重扫比补扫更省事;如果“明确未覆盖”集中在少数目录,补扫更合适。这个取舍依据的是分类结果,而不是中断时的进度百分比。

需要核对的工具信息与常见误判

不同网页快照查询工具对中断、去重和断点续扫的处理方式不同。日志字段名称、是否保留待抓队列、能否导出中断点,这些具体信息需要以你所使用工具的当前说明为准,不能凭通用经验推断。避免两个常见误判:一是把结果条数等同于覆盖页面数,忽略了重复和参数页;二是把抓取请求归零当作扫描完成,实际上请求归零也可能意味着被目标站点限流或工具主动暂停,需要结合日志时间戳和错误记录一起看。

如果日志显示中断前后请求量骤降但没有错误记录,优先检查是否触发了目标站点的访问限制,而不是直接认定扫描已自然结束。确认这一点后,再决定是调整抓取节奏重扫,还是从断点继续。

图1 图2

nginx