先给结论:不要按“已发现”和“未发现”直接分组,而要先按提交批次或页面模板切出两个可比的组,再在组内比较差异。例如同一批通过站点地图提交的页面,若A组全部被发现、B组只被发现一部分,真正要比较的是两组在链接位置、模板结构或内容更新方式上的不同,而不是“发现”这个结果本身。这样做的原因是,发现与否是结果,不是原因;直接按结果分组会把原因和结果混在一起。
你可能会看到:同一时间通过站点地图提交的一批页面,抓取日志里只有一部分出现,另一部分长期没有动静。这不等于提交无效,也不等于剩余页面被拒绝。更常见的解释有两类。
第一类解释是入口差异。被发现的那部分页面,可能同时出现在栏目列表、上一篇下一篇、面包屑或站内搜索页里;未发现的那部分只存在于站点地图中。此时差异不在提交动作,而在页面是否有可爬取的站内链接路径。
第二类解释是模板差异。被发现的那部分可能使用了更简单的模板,正文直接出现在初始HTML中;未发现的那部分依赖脚本渲染,或正文藏在需要交互才能展开的区块里。此时差异不在链接,而在抓取时能看到的初始内容。
这两类解释会指向完全不同的下一步,所以不能跳过区分直接批量重提。
对照组的价值在于只让一个变量不同。实际操作可以这样切:
如果两个变量同时不同,比如既有链接差异又有模板差异,那么后续无论出现什么结果都无法归因。此时应先把其中一批页面补上站内链接,或先统一模板,再重新观察。这个动作的结果会直接影响下一步:如果补链接后未发现页面开始被抓取,说明入口是主要遗漏条件;如果补链接后仍无变化,才需要转向检查渲染或内容可见性。
要判断是入口差异还是模板差异,可以看三类证据。
需要说明的是,站点地图提交不保证收录,抓取量下降也不能单独证明某个处理正确。抓取量归零还可能来自服务器响应变慢、robots.txt 临时限制或日志采样方式变化。robots.txt 的抓取限制也不等于可靠的索引移除,它只影响抓取,不直接决定已收录页面是否消失。
假设某站点有200个商品页,100个在列表页有链接,100个只能通过站点地图到达。先不要同时改两批。只给后100个中的50个补上列表页链接,另50个保持原样,观察一段时间。如果补链接的50个开始出现抓取,而另50个仍无动静,入口差异的解释得到支持,下一步应优先扩展内链覆盖;如果两组都没有变化,则应转向检查模板渲染和初始HTML中的正文可见性。这个例子的数字仅用于说明比较方法,不代表任何实际站点数据。
不要因为某一组“看起来更好”就断定原因。发现页面数量受多种因素影响,包括站点整体抓取节奏、页面更新频率和服务器响应。HTTPS 不保证安全无漏洞或排名,它也不是发现与否的分组依据。不同搜索引擎对脚本渲染和站点地图的支持情况须分别核查,百度的表现不能直接套用到其他引擎。
更稳妥的做法是:每次只改一个条件,保留另一组不动,记录改动前后两组的抓取日志和初始HTML快照。这样即使结果不如预期,也能知道是哪个条件没有起作用,而不是把多个改动混在一起后无法判断下一步该往哪里走。