判断采集是否遗漏,核心不是看工具给出的总量,而是把工具采集到的URL集合与页面自身可发现、可枚举的URL集合做差集,再逐条核查差集里的URL为什么没被采到。只靠单一指标无法下结论,需要至少两条独立证据交叉验证。
很多误判来自把不同来源的数字直接相减。站内统计、搜索引擎报告、第三方估算流量三者的统计对象和口径都不同,不能互相替代。
因此,判断遗漏应以“站内可枚举的URL全集”为基准,而不是以某个工具面板上的总数当基准。
没有全集就无法谈遗漏。全集可以来自站点地图、内部链接抓取、数据库导出或日志,具体选哪种取决于站点类型。
比较A、B、C与D的差集。A中有而D中没有的,说明已声明但未被采集;B中有而A中没有的,说明存在未进站点地图的可达页面;C中有而B中没有的,说明只能通过日志发现。三者都要看,只看一个会漏。
发现遗漏后,常见两种处理方向,适用条件不同。
判断依据:如果差集里的URL在集合B中已经存在,选方案一通常够用;如果不在B中,说明页面本身不可达,选方案二更根本。两者可以叠加,但先做哪一步取决于页面是否已被内部链接覆盖。
以下步骤可直接执行,用于定位遗漏原因。
curl -I检查返回状态码。返回200说明可访问,返回404或5xx说明是页面本身问题,不是采集遗漏。<meta name="robots">与响应头中的X-Robots-Tag。若为noindex,属于主动排除,不算遗漏。robots.txt是否屏蔽了相关路径。被屏蔽的URL不会被抓取,属于规则性排除。判断结果:状态码异常归为可访问性问题;被robots或noindex排除归为规则性排除;状态正常、未被排除但既不在站点地图也无内部链接的,才是真正需要处理的采集遗漏。
假设某页面返回200,不在站点地图,也没有任何内部链接指向它,但被外部链接引用。此时它属于“外部可达、内部孤立”。处理方式是先加入站点地图,再在相关栏目页补一条内部链接。适用条件是页面内容需要被采集;如果页面本就不希望被收录,应改用noindex而非补链接。
从差集中挑出状态正常但既不在站点地图也无内部链接的URL,按“先补内部链接、再补站点地图”的顺序处理,并在一段时间后重新对比同一差集,确认遗漏数量是否下降。