关键词挖掘工具:一次全站扫描被中断后怎样判断已覆盖范围

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

关键词挖掘工具:一次全站扫描被中断后怎样判断已覆盖范围

先给结论:中断后不要凭“剩余时间归零”或“进度条消失”判断覆盖范围,而要用扫描日志里最后一条完整记录加上断点前的任务清单快照交叉验证。如果两者都不可得,只能按已确认完成的入口层级重新划分范围,不能把未跑完的部分默认视为已覆盖。

矛盾现象:中断后工具显示“已完成”或“无剩余任务”

全站扫描被中断后,常见两种相反结果:一种工具把中断当成正常结束,显示任务完成;另一种工具保留断点但剩余列表为空。此时直觉会认为“覆盖已满”,但实际可能只跑完了种子入口或第一层链接。

出现这种情况通常有两种解释:

区分两者的关键不是看进度百分比,而是看已确认完成的入口是否有对应的产出记录。如果每个入口都能追溯到至少一条关键词或页面级结果,解释A成立的概率更高;如果只有入口记录没有产出,解释B更可能。

用三组可核对证据区分“真覆盖”和“假覆盖”

第一组:扫描日志的连续性

检查日志中最后一条完整记录的时间戳与中断时间是否接近。如果日志在中断前有连续的入口完成记录,且没有跳号,说明覆盖范围至少到该入口为止。如果日志在中断处直接跳到“任务结束”或“剩余为零”,中间缺少完成记录,则不能认定覆盖。

实际操作:把日志按入口ID排序,找出最后一个连续完成的ID,把它之前的所有入口视为已覆盖候选,之后的一律视为未确认。这个动作的结果会直接决定下一步是补扫剩余入口还是重新全扫。

第二组:断点文件的入口清单快照

如果工具支持断点续跑,通常会保留一个入口清单文件。打开它,看清单里是否还有未标记完成的条目。注意:清单为空不等于覆盖完成,还要看这个清单是否在中断前被最后一次写入。如果文件修改时间早于中断时间,说明它可能不是最新状态。

假设一个例子:某次扫描共计划抓取200个入口,断点文件里只剩3个未完成,但文件修改时间比中断时间早了十分钟。这十分钟内可能已经完成了更多入口,也可能一个都没完成。此时不能直接补扫这3个,而应先核对日志中这十分钟内是否有新的完成记录。如果有,就把这3个从待办中移除;如果没有,就保留这3个并额外检查是否有日志缺失的入口。

第三组:产出结果的入口覆盖率

把已产出的关键词或页面结果按入口来源分组,统计有多少个入口至少贡献了一条结果。如果这个数量接近断点文件中的已完成数量,覆盖范围可信;如果远低于已完成数量,说明部分入口虽然标记完成但没有实际产出,覆盖范围需要打折。

这里要提醒:产出为零不一定代表入口没跑,也可能是该入口本身没有可提取的关键词。所以不能只看产出数量,还要结合入口类型判断。例如导航页、分页列表页产出少是正常的,内容页产出少才更可疑。

中断后重新划定覆盖范围的具体步骤

  1. 导出扫描日志,按时间排序,标记最后一条连续完成记录的位置。
  2. 检查断点文件或任务清单的修改时间,与中断时间对比,判断它是否可信。
  3. 把已产出结果按入口来源分组,计算有产出的入口占比。
  4. 取以上三步中最保守的范围作为已覆盖范围,即三者都确认完成的入口才算覆盖。
  5. 对未确认的入口,决定是补扫还是重扫:如果未确认入口数量少且工具支持断点续跑,优先补扫;如果未确认入口占比高或断点文件不可信,直接重扫更稳妥。

这个动作的结果会影响后续的关键词去重和合并策略:如果补扫,需要把新结果与旧结果按入口ID合并;如果重扫,旧结果可以作为交叉验证,但不要直接当作完整基线。

什么情况下“覆盖范围”本身就不该按全站计算

如果扫描目标是全站,但中断发生在深层分页或筛选参数链接上,那么即使入口清单跑完,实际覆盖的URL空间也可能远小于全站。此时判断覆盖范围要换一个口径:按已确认抓取的URL模板而不是入口数量来算。

例如,一个列表页有多个筛选参数组合,工具只跑了默认参数,那么即使这个列表页标记完成,它的参数变体并未覆盖。这种情况下,中断后的正确做法是记录已覆盖的URL模板,把未覆盖的参数组合单独列出,而不是笼统地说“全站扫描完成了百分之多少”。

最后,如果日志、断点文件和产出结果三者都无法获取,唯一可靠的判断依据是:没有证据的入口一律视为未覆盖。这不是保守,而是避免把中断造成的空白当成已完成范围,进而影响后续的关键词决策。

图1 图2

nginx