先别急着重新跑一遍。中断后判断覆盖范围,核心不是看工具提示“完成”还是“失败”,而是把已抓取结果与站点可枚举的URL清单做一次差集核对:差集越小,说明已覆盖越接近完整;差集里若集中出现某类模板页,问题往往出在中断点而非抓取能力。下面以你手头那份中断后导出的CSV为对象,逐步把它变成可核对的覆盖结论。
多数人对同一次扫描的分歧,来自把两种口径混在一起:一种是工具实际返回了数据的URL,另一种是站点上客观存在的URL。中断只影响前者,不会改变后者。因此第一步是分别列出两份清单,而不是直接讨论“扫没扫完”。
把B中不在A里的URL挑出来,就是待确认的差集。差集为空或只剩少量动态参数页时,中断的实际影响很小;差集里成片出现同一目录或同一模板,才说明覆盖确实被截断。
只看差集数量不够,要看它落在哪里。这能帮你决定是补扫、重扫还是只补某一段。以下判断依据都建立在“清单B本身可靠”这个前提上。
如果缺失URL大多排在站点地图靠后位置,或集中在某个分页区间之后,通常说明扫描按顺序推进时被中断,前面的覆盖是可信的。此时补扫剩余区段即可,不必全量重来。
缺失URL散布在多个栏目、没有先后规律,更可能是抓取配额、超时或访问限制导致的选择性遗漏,而不是简单的中断点问题。这种情况下,只补扫差集可能反复遗漏,需要先核对抓取配置再决定是否重扫。
如果差集里混入筛选参数、会话ID、重复路径,说明清单B本身混入了噪声。先把这些排除,再比较,否则会把“不该抓的没抓”误判成覆盖不足。
当多个角色对“扫了多少”各执一词时,争论点通常不是数字,而是各自手里的清单不同。把口径固定下来,分歧就能变成可核对的项目。假设运营手里有站点地图,技术手里有日志,编辑手里有中断导出的CSV,可以这样对齐:
这张表一旦成型,“覆盖了多少”就变成一个可复核的结论,而不是各说各话。需要提醒的是,清单B的完整性依赖站点地图是否及时更新;若站点地图本身滞后,差集会被高估,此时应先核对地图与线上实际页面是否一致。
假设某站有1000个应抓URL,中断导出得到720条,差集280条。若这280条全部落在站点地图第8页之后,且顺序连续,可以判断为顺序中断,补扫后段即可。若这280条分散在全部10个栏目、每栏约28条,则更可能是抓取过程中被限流或超时,补扫差集未必稳定,建议先检查抓取间隔与超时设置,再决定是否重扫。两种情况下“720”这个数字相同,但下一步动作完全不同——这正是只看总数会误判的地方。
执行补扫后,把新增结果与差集再比一次:若差集显著缩小且不再出现新的同类缺失,说明判断成立,可以进入下一步分析;若补扫后差集结构不变,说明问题不在中断点,而在于抓取配置或清单B本身,需要回到上一节重新核对。
请求量归零、导出文件为空、工具显示“已停止”,这些都不能单独说明处理正确。请求量归零可能是被目标站限流,也可能是任务提前退出;导出为空可能是筛选条件过窄,也可能是真的没有可抓页面。合理的解释不止一种,必须结合差集分布和清单B的可靠性一起判断。同理,某次扫描抓到的URL数量与上次接近,也不代表覆盖一致——两次的基准清单可能已经变化。
判断覆盖是否足够,最终取决于你的用途:如果只是抽取部分页面的标题与描述做抽样,差集偏大也能用;如果要据此判断全站结构问题,差集必须收敛到可解释的范围。明确用途,再决定补扫到什么程度,比追求“跑完一次”更有意义。