先把“被发现”拆成两个可独立观察的指标:抓取日志里出现过该 URL 的请求,以及该 URL 最终进入索引。批量页面里只有一部分被发现,通常不是随机分布,而是沿某个站点结构维度成簇出现。划分对照组的正确做法,是选一个你能控制的单一变量,把页面分成“变量相同”和“变量不同”两组,再看抓取差异是否与这个变量同步。若两组在多个维度上同时不同,结论不可用。
在划分对照组之前,必须把现象归类,否则组会分错。
这里有一个容易误判的点:抓取量或某项统计降到零,不能单独证明你的处理动作正确,也不能证明某条规则是唯一原因。它可能只是爬虫把预算挪去了别的目录,或站点整体响应变差。所以对照组要能区分“这个变量在起作用”和“整体抓取环境在变化”。
当每个页面都能通过直接 URL 返回 200,问题往往出在发现路径而非可访问性。此时对照组应围绕内链划分:
选择依据是:如果差异随内链出现而拉开,说明发现路径是主要约束,下一步应扩展内链改造范围;如果两组仍无差异,则把注意力转向服务器响应或目录层级的抓取配额。例外情况是页面本身属于低价值聚合页,即使补了内链也可能被判定为不必抓取,这类页面不应放进对照组,否则会污染结论。
当页面存在抓取限制、重定向链过长、或全部依赖前端渲染才能暴露内容时,对照组要围绕“限制条件”划分,而不是围绕内容质量。
需要提醒的是,robots.txt 的抓取限制不等于可靠的索引移除,解除限制也不保证页面立刻被抓取;站点地图提交同样不保证收录。这两点决定了对照组只能用来判断“限制是否为主要瓶颈”,不能用来预测具体收录时间。
一个假设例子:某目录下 500 个页面,其中 120 个有抓取记录。把其中 60 个加入站点地图并补内链,另 60 个只补内链。若两周后前一组抓取比例明显更高,说明站点地图在该场景下有辅助发现作用;若两组接近,则站点地图不是当前瓶颈,应优先查内链深度和服务器响应。这里的两周只是示例观察窗口,实际周期取决于站点规模和抓取频次。
为了让结论可用,两组之间只应有一个变量不同,其余尽量一致:
如果无法做到单变量,退一步的做法是记录所有已知差异,并在结论里明确哪些差异未被排除。这样即使结论不精确,也不会把相关当成因果。
具体动作:先导出全部目标 URL 及其抓取记录,按“是否有抓取请求”标记;再按内链数量、目录深度、响应时间三个维度各做一次分组统计,找出差异最集中的那个维度。结果会直接决定下一步——若差异集中在内链,就扩大内链改造;若集中在响应时间,就先处理服务器与缓存;若三个维度都没有明显分化,说明瓶颈可能在整体抓取预算或内容价值判定,此时应减少对照组规模,改为跟踪少量代表性页面的长期变化,而不是继续扩大实验范围。