很多站点把「被蜘蛛发现」当成一次性的事:发了 Sitemap,提交了链接,就觉得剩下的交给搜索引擎。实际排查时常见的现象是,同一批新 URL 里,一部分第二天就被抓了,另一部分过了几周仍然没有访问记录。原因往往不在蜘蛛本身,而在于这些 URL 是通过不同渠道暴露出去的,每条渠道的可靠性和延迟都不一样。
URL 发现的三条主要渠道
把发现渠道拆开看,逻辑会清楚很多:
- 站内链接:蜘蛛顺着已有页面上的 a 标签往上爬,这是最稳定、最持续的发现方式,也最容易被你控制。
- Sitemap 文件:批量声明 URL 清单,适合数量大、层级深的页面,但它只是声明,不等于被抓取。
- 其他入口:外链、主动提交接口等,通常量小、时效性强,适合少量重要 URL。
内链是根基,但要看位置
同样是链接,出现在导航、正文、页脚,被跟随的概率并不相同。导航链接稳定但数量有限;正文里的链接与内容相关,蜘蛛顺着语义走的机会更大;页脚链接数量多,容易被当成模板,价值被稀释。如果一个新页面只在页脚某个折叠区块里出现,它被重新发现的周期通常比放在正文推荐位的页面长得多。
核对时可以关注:
- 重要页面是否至少有一条来自高频抓取页面的正文链接;
- 同一页面上指向不同 URL 的链接数量是否过多,导致注意力分散;
- 链接文字是否能说明目标页面内容,而不是清一色的「点击查看」「更多」。
Sitemap 解决的是「有没有」,不是「抓不抓」
Sitemap 的价值在于给出一份完整清单,让蜘蛛不必完全依赖内链去推断。但清单里的 URL 依然要排队。真正影响它是否被优先处理的,还是页面的更新频率、在站内的位置以及服务器响应是否稳定。所以 Sitemap 应该和状态报告、抓取日志一起看:声明了多少、被抓了多少、差集里是什么类型的页面。
多入口并行时,容易踩的坑
- 只改 Sitemap,不同步内链:新 URL 在文件里,但站内没有入口,抓取后缺少后续路径。
- 旧 URL 删除后仍留在 Sitemap:产生大量 404 或跳转,浪费抓取额度。
- 推送接口一次性提交大批低价值 URL:短期抓取量上升,长期看有效抓取比例下降。
- 不同渠道的 URL 写法不一致:带参数、大小写差异,被当成多个页面。
按渠道核对的一个简单流程
- 从日志里筛出目标 URL 类别的抓取记录,记下首次抓取时间。
- 对照 Sitemap 声明时间、内链上线时间、推送提交时间,看哪个时间点最接近首次抓取。
- 把长时间未被发现的 URL 单独列出,检查站内是否真的存在指向它的链接,链接是否可正常渲染。
- 对反复抓取但价值低的 URL(筛选参数、站内搜索结果页)做收敛,把机会让给有效页面。
发现渠道越多越好是一种误解。渠道应该和页面类型匹配:批量页靠 Sitemap 和内链,时效性强的少量页面靠推送和外链。
把结论落到改动上
核对的目的不是解释过去,而是指导下一次改动。如果发现新页面长期只靠 Sitemap 被发现,就该给它补一条正文内链;如果发现某些分类页每天被抓但内容长期不变,就该考虑降低它在内链中的曝光。抓取本身无法被承诺控制,但入口是否通畅、路径是否清晰,是站点可以自己掌握的部分。