淘大象SEO工具:一次全站扫描被中断后怎样判断已覆盖范围

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

淘大象SEO工具:一次全站扫描被中断后怎样判断已覆盖范围

结论先说:扫描中断后,你通常只能确认“已抓取到的页面里,哪些被处理过”,不能确认“全站已经覆盖”。判断依据不是进度条走到哪,而是导出记录里是否有可核对的URL清单、抓取时间和处理状态。缺少其中任何一项,覆盖范围就只能算推测。

先分清“抓到了”和“处理完了”是两件事

全站扫描一般包含抓取、解析、计算三个阶段。中断发生时,三者停在不同位置:有的URL已经进入结果表,有的只完成了请求,有的连请求都没发出。判断覆盖范围时,要按阶段分别看。

如果工具只提供一个总数而没有逐条URL记录,你能做的最小动作是:把中断前导出的结果按URL去重,统计条数,再与站点地图或站内链接清单做差集。差集之外的页面,就是本次没有覆盖的部分。这个动作不需要额外权限,也不依赖扫描继续。

用三个可核对的证据判断覆盖边界

在没有完整数据和后台权限的情况下,仍然可以用下面三类证据交叉判断。

  1. 导出文件的最后修改时间与记录条数。如果导出发生在中断之后,条数就是本次实际处理的量级;如果导出发生在中断之前,条数只代表当时的状态。
  2. URL前缀的分布。按目录或路径段分组,看哪些分组有记录、哪些完全没有。某个目录整体为空,往往说明扫描还没走到那里,而不是该目录没有问题。
  3. 站点地图或站内链接的对照。用一份独立来源的URL清单做参照,能算出覆盖率的大致比例。这里要注意:比例是估算,不是精确值,因为参照清单本身可能不完整。

假设一次扫描目标是1000个URL,中断后导出记录为420条,其中380条带有完整检测字段。那么可用的分析范围是380条,占目标量的38%。剩下的620条里,有一部分可能已被抓取但未处理,有一部分完全未触及,仅凭导出文件无法区分。这个例子只说明比较方法,不代表任何真实项目的数字。

一个会让上述判断失效的反例

如果扫描是按优先级或随机顺序推进,而不是按目录顺序,那么“某个目录整体为空”就不能推出“还没扫到那里”。它可能只是排序靠后,也可能该目录本身没有可抓取的入口。此时按前缀分组的方法会给出错误边界。

同样,如果工具在中断时没有落盘中间状态,导出文件只包含已完成处理的记录,那么“已抓取未处理”这一层根本不存在,你只能得到“已处理”和“未知”两类。这种情况下,任何关于覆盖率的说法都只能限定在已处理范围内。

判断方法是否失效,有一个简单检验:换一个排序维度重新分组,看空目录是否发生变化。如果变化明显,说明原分组不能作为覆盖边界的依据。

下一步动作取决于你要的是趋势还是清单

如果你的目的是看整体趋势,已处理的380条通常够用,但要注明样本偏向——它可能集中在某类模板或某个栏目,不能代表全站。此时下一步是把这批记录按页面类型分层,检查各层是否都有样本。

如果你的目的是拿到一份可执行的修复清单,已处理范围不够。下一步应该是补齐未覆盖部分:可以用站点地图分批提交,或按目录拆分多次扫描,每次记录起止URL。补齐之前,不要把“未发现问题”写进结论。

无论哪种目的,都建议在下次扫描前先固定一个可对照的URL基准清单。这样即使再次中断,也能快速算出覆盖边界,而不是重新猜测。具体到某个工具的导出字段名称和中断恢复行为,需要以你实际使用的版本为准,不同版本之间可能存在差异。

图1 图2

nginx