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

📍 WDQWDWQD987AAAAA:18.97.9.171
📱 CCBot/2.0 (https://commoncrawl.org/faq/)
🔗 /3306decf5817.html
📄

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

中断后不要凭进度条或“已扫描”字样下结论。先确认工具是否在中断前写过断点或状态文件,再决定是补扫缺口还是重新全扫。没有可核对的记录时,已覆盖范围只能按最保守估计处理。

先判断中断发生在“发现阶段”还是“写入阶段”

关键词添加工具的全站扫描通常分两步:先发现页面,再把页面内容与词表比对。中断发生在发现阶段,已覆盖范围接近零;中断发生在写入阶段,已发现但未写结果的那部分页面需要补扫。两种情况的判断依据不同。

如果工具只显示百分比而没有留下队列或结果文件,这个百分比不能作为覆盖证据,因为它可能按时间估算,也可能按已处理任务数估算,两种口径对应的缺口完全不同。

两种条件下选择补扫或重扫

选择依据只有一条:中断前写下的记录能否把“已处理页面”和“未处理页面”区分开。能区分就补扫,不能区分就重扫。

条件一:有断点记录,选择补扫

补扫前先做一次差集核对。假设队列文件有 1200 行页面地址,结果文件有 800 行,差集为 400 行。此时不要直接把这 400 行交给工具,先检查结果文件里是否存在重复地址或空结果行。如果空结果行是写入失败留下的占位,它应当计入缺口而不是已覆盖。

实施动作:把差集页面单独导出为一份待扫清单,用同一份词表和同一套匹配规则重跑。跑完后把新旧结果按页面地址合并,再统计有匹配的页面数。这个动作的结果决定下一步:如果补扫后仍有页面在两次结果中都不存在,说明这些页面可能在发现阶段就被漏掉,需要回到站点地图或站内链接重新发现,而不是继续补扫。

条件二:没有断点记录,选择重扫

没有断点记录时,任何“已覆盖”判断都缺少依据。重扫不是浪费,而是把覆盖范围重新变成可核对的状态。重扫前先固定三件事:起始地址清单、词表版本、匹配规则。三者中任何一项在两次扫描之间变化,结果都无法直接合并。

实施动作:先用一个小范围样本验证工具当前配置能正常输出队列和结果文件,再启动全站扫描。如果样本阶段就出现队列文件不生成的情况,先解决记录问题,不要直接全站跑,否则中断后仍然无法判断覆盖范围。

用可核对的证据区分“已覆盖”和“看起来已覆盖”

中断后最容易出现的反常现象是:工具显示扫描过很多页面,但结果里几乎没有匹配。这不等于词表没有命中,也不等于工具失效。至少存在三种合理解释,需要用不同证据区分。

  1. 匹配规则过严:检查词表是否要求完整词组连续出现。如果规则要求连续匹配,而页面里词被标点或标签分隔,结果就会偏少。核对方式是抽几个已知包含该词的页面,看它们在结果文件中的状态是“无匹配”还是“未处理”。
  2. 页面内容未成功获取:结果文件里可能出现大量空内容或超时标记。这类记录不应算作已覆盖。核对方式是统计结果文件中的空内容行数,把它们从已覆盖范围中扣除。
  3. 发现阶段漏页:队列文件里的地址数明显少于站点地图或站内链接可到达的页面数。核对方式是取站点地图中的地址与队列文件做差集,差集部分属于未发现,不属于未匹配。

这三种解释对应的下一步动作不同:规则过严要调整匹配方式后重跑受影响页面;内容未获取要检查访问限制或超时设置后补扫;发现漏页要更换发现来源后重新入队。把三种原因混在一起,就会误以为需要全站重扫。

把中断当成一次覆盖审计,而不是一次失败

中断本身不决定结果能否使用,决定结果能否使用的是记录是否完整。有队列和结果文件时,按差集补扫,并用补扫后的合并结果判断下一步;没有记录时,按重扫处理,并在重扫前先确保工具能稳定输出队列和结果文件。例外情况是:如果词表或匹配规则在中断前后发生过修改,即使有断点记录也不能直接合并,应当以最后一次修改后的配置为准重新建立覆盖基线。

判断已覆盖范围时,不要只看请求量、抓取量或工具界面上的完成比例。这些数字归零或偏高都可能有多种解释,必须回到队列、结果和差集这三份可核对的记录上,才能决定是补扫、重扫还是先修发现来源。

图1 图2

nginx