空值和零值在网页快照查询中不是同一件事。零值通常表示工具成功取回了响应,但快照内容字段为空或计数为零;空值更常表示查询没有完成、目标没有进入处理范围,或返回结构里根本没有这个字段。先判断是哪一类,再决定是补查、换条件,还是把结果标记为不可用。
假设你维护一份两百个页面的清单,用同一套条件做网页快照查询。前十个样本手动核对时都能看到内容,规模化执行后却出现一批空单元格。此时不要直接把这些页面判为“没有快照”。先看原始返回:如果字段存在但值是 0、空字符串或空数组,说明请求链路走通了,问题出在快照本身或匹配条件;如果字段整体缺失、返回对象为 null,或者状态码显示未完成,说明查询没有拿到有效结果。
这个区别会直接影响下一步。字段存在但为零,可以保留原记录并进入二次核查;字段缺失或对象为空,应先检查查询参数、目标标识和任务状态,而不是修改页面清单。
空值往往来自查询侧,而不是目标侧。常见来源包括目标标识写错、查询条件过窄、任务尚未执行完、接口限流后返回了空结构。它们的外观可能一样,但处理方式不同。
这些动作的目的不是立刻得到内容,而是先确认查询本身是否成立。查询不成立时,任何基于空值的结论都不可靠。
零值更接近“查到了,但结果为空”。它可能表示目标确实没有可用快照,也可能表示快照存在但内容字段为空、匹配关键词为零、计数维度不对。规模化后出现例外,通常是因为不同页面类型混在同一列里比较。
假设同一批清单里既有普通内容页,也有参数页和跳转页。普通内容页返回零值,可能确实没有快照;参数页返回零值,可能只是查询时没有带上必要参数。把这两类混在一起统计,会误以为“零值等于无快照”。更稳妥的做法是按页面类型分组,每组抽几条人工核对,确认零值在该组里代表什么,再决定是否整组沿用。
假设某条记录返回 0,你先做三件事:确认字段存在,确认查询状态为完成,确认目标标识与清单一致。三者都成立时,把这条记录标为“查询完成、快照为空”,进入人工复核队列;只要有一项不成立,就退回查询环节重跑,不进入复核队列。
重跑后如果返回结构完整且有内容,说明原零值来自查询条件;如果仍然返回零值,才把它当作目标侧结果处理。这个顺序能避免把查询失败误判成目标缺失,也能避免把目标缺失反复重查。
个别样本成立不代表整套清单成立。把判定规则写进执行说明,至少包含:字段缺失如何处理、状态未完成如何处理、零值是否进入复核、复核不通过后是否重查。规则固定后,空值和零值才不会在汇总时被合并成同一个数字。
如果汇总表里只保留一个“无结果”列,后续就无法区分是查询没跑通还是目标确实为空。保留原始返回结构或至少保留状态字段,是让下一步决策有依据的最低条件。