旺道排名:一次全站扫描被中断后怎样判断已覆盖范围

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

旺道排名:一次全站扫描被中断后怎样判断已覆盖范围

先给结论:中断后不要凭“扫到多少条”判断覆盖范围,而要回到扫描任务本身,看它是否留下了可核对的任务边界。比较稳妥的做法是,先确认这次扫描是按什么范围发起的,再去比对已产出结果与站点现有内容清单的差集,最后决定是补扫还是重新扫。下面用一个假设情境把判断过程拆开。

假设情境:一次全站扫描只跑了一半

假设你手上有一个旧站点,导航里混着几套历史栏目,一部分内容已经打算下线,另一部分还想保留。你发起了一次“旺道排名”相关的全站扫描,想看清哪些页面还值得留、哪些链接该清理。任务跑到中途因为网络或进程问题停了,页面只输出了一部分结果。

这时候真正要回答的不是“扫了多少”,而是“没扫到的部分里,有多少是我关心的”。如果没扫到的主要是准备下线的旧栏目,那这次中断对决策影响很小;如果没扫到的是准备保留的核心内容,就必须补扫,否则后面的取舍会建立在残缺清单上。

先确认扫描范围,再谈覆盖

判断覆盖范围的第一步,是找回这次任务的边界定义。常见边界有几种:按域名全量、按目录或栏目、按导入的 URL 清单、按某种筛选条件(比如只扫某类页面)。中断后的结果只能在这个边界内解释。

这里有个容易被忽略的点:抓取量、请求量或结果条数出现异常,并不能单独证明扫描已经正确覆盖。中断、限速、超时、页面本身不可达,都会让数量变小,原因不同,处理方式也不同。所以数量只能作为线索,不能作为结论。

用差集判断:哪些已覆盖、哪些没覆盖

更可靠的方式是做差集。把“站点上实际存在、且你关心的 URL 集合”记为 A,把“这次扫描已经产出结果的 URL 集合”记为 B,那么 B 是已覆盖部分,A 减去 B 就是缺口。判断的重点落在缺口上,而不是 B 有多大。

假设站点有 500 个你关心的 URL,中断后结果里有 300 个,那么缺口是 200 个。接下来要问:这 200 个是集中在某几个目录,还是零散分布?如果集中在几个即将下线的旧栏目,可以暂时不补;如果分散在保留栏目里,就必须补扫。这个比较方法只是说明思路,具体数字要按你自己的清单来算。

实际操作上,可以先把已产出结果导出成一份 URL 列表,再和站点地图或栏目清单做比对。这个动作的结果会直接决定下一步:缺口小就补扫缺口,缺口大且分布零散,重跑一次反而更省时间。

区分“没扫到”和“扫到了但没结果”

中断场景里最容易混淆的,是“没扫到”和“扫到了但没产出有效结果”。这两者处理方式完全不同。

如果只看到“结果条数少”就断定覆盖不足,可能会把本来已经扫过、只是没产出的页面重复补扫,浪费一轮时间。反过来,如果把“扫到了但无结果”当成已覆盖,又可能漏掉真正需要处理的页面。区分这两类,是决定补扫范围的关键依据。

补扫还是重扫:按缺口结构决定

确认缺口之后,选择补扫还是重扫,取决于缺口的结构,而不是缺口的大小本身。

  1. 缺口集中、边界清晰:补扫缺口部分,保留已有结果,成本最低。
  2. 缺口分散、跨越多个栏目:重扫一次更可控,避免两次结果口径不一致。
  3. 任务本身没有留下范围记录:只能以站点现有清单为准重新发起,否则覆盖范围无法核对。

还有一个取舍:如果这次扫描只是为了给旧内容退出做参考,而缺口恰好落在你本来就要下线的部分,那么不补扫也是成立的,前提是你明确知道缺口在哪里、并且接受这部分不做判断。这也是“保留仍然有价值的部分”这个场景下常见的做法。

需要提醒的是,具体工具是否保留中断前的进度、是否支持断点续扫、结果能否按范围导出,这些都要以你实际使用的版本和界面为准,不同工具、不同版本差异很大,不能凭印象假定。核对时优先看任务记录里有没有范围定义和完成状态,而不是只看结果页的数量。

图1 图2

nginx