搜索抓取

蜘蛛眼里的页面深度:点几次能到,比 URL 有几层更重要

蜘蛛判断一个页面深不深,看的是从入口点几次链接能到,而不是 URL 里有几层目录。本文说明点击深度如何影响 URL 发现和抓取节奏,怎么自查站内被埋深的页面,以及导航、面包屑、聚合页和正文内链这些能真正缩短抓取路径的做法。

搜索抓取

蜘蛛眼里的页面深度:点几次能到,比 URL 有几层更重要

很多人优化抓取路径时,第一反应是看 URL 里有几个斜杠,觉得目录层级越浅越好。但对搜索蜘蛛来说,它判断一个页面“深不深”,看的不是地址栏里的路径,而是从已知入口出发,需要点多少次链接才能走到这个页面。这两个数字经常对不上:URL 只有两级的页面,可能要从首页点五次才到;而 URL 里带三层目录的页面,反倒挂在主导航上,一跳就能进去。

蜘蛛算的深度是点击次数

蜘蛛的工作方式是顺着链接走。它拿到一批已知 URL,抓取页面,从 HTML 里提取新的链接,再把新链接放进待抓队列。一个页面只有被某条链接指向,才有机会进入这个队列。所以对蜘蛛来说,页面的“距离”是链接图里的跳数,而不是文件系统的层级。

这也是为什么 Sitemap 只能算补充手段。它能把 URL 递到蜘蛛面前,但一个既没有内链、也不在导航里的页面,即使写在 Sitemap 里,蜘蛛对它的抓取频率和更新感知通常也弱于有正常链接入口的页面。

点击深度影响哪些事

  • 被发现的速度:离入口近的页面,蜘蛛更早看到更新。
  • 抓取节奏:抓取资源有限时,链条长的页面排在后面,容易长时间不更新。
  • 抓取稳定性:路径上任何一环断掉,后面的页面就一起失去入口。
  • 排查难度:深度大的页面出问题时,日志里出现的次数少,不容易从数据里发现。

先量一量自己站点的点击深度

  1. 从首页开始,沿站内链接做一次小范围爬取,记录每个 URL 的最短点击距离。
  2. 把结果按跳数分档,重点看有多少页面在四跳以上。
  3. 对照 Sitemap 和日志,找出“只在 Sitemap 里、内链里找不到”的页面。
  4. 挑出你最希望被抓的业务页,看它们分别在第几跳。

很多站点量完之后会发现,问题不是页面太多,而是重要页面被埋在了层层列表和筛选页后面。

缩短深度的几种常见做法

导航和栏目结构

把主要分类放进顶部导航或侧边常驻入口,让核心栏目保持在一到两跳。栏目页再往下,尽量让内容页在列表页第一屏或第二屏就出现链接,而不是全靠“加载更多”。

面包屑与聚合页

面包屑给每层页面都提供了一条向上、向旁的路径,聚合页则把同一主题下的内容收在一起,减少蜘蛛绕路的次数。这两类页面本身内容要求不高,但作为链接节点很有用。

正文里的相关链接

在正文底部放几条真正相关的文章链接,比在页脚堆一大片全站链接更自然,也更容易让蜘蛛沿着主题走到新页面。

分页与列表的收尾

列表页翻到后面几页时,别忘了让链接继续存在。无限滚动如果只靠 JS 触发、不生成可抓取的链接,后面的内容对蜘蛛基本等于不存在。

目录浅不等于点击浅

把三层目录的地址改成一级目录,如果没有任何链接指向它,蜘蛛照样进不去。反过来,URL 长一点但有正常工作内链的页面,抓取并不会因此受影响。URL 结构值得整理,但它解决的是重复和可读性问题,解决不了“没有入口”的问题。

常见误区

  • 把全站 URL 一股脑塞进 Sitemap,就当解决了入口问题。
  • 用页脚挂满链接来“拉平”深度,结果每个页面都多出几百条无意义链接。
  • 列表页只做“加载更多”按钮,后面几页没有可抓取的 URL。
  • 链接由 JS 点击事件生成,HTML 里看不到 href。

一份可以照着做的检查清单

  1. 核心业务页是否在三跳以内可达。
  2. 每个栏目页是否至少有一条从首页出发的稳定路径。
  3. 分页、筛选后的列表是否有可抓取的链接。
  4. Sitemap 里的 URL 是否大部分都能在站内找到内链入口。
  5. 定期从日志里看深层页面的抓取情况,确认路径没有断。
深度这件事没有统一标准,重要的是让蜘蛛有清晰、稳定、不断链的路可以走。路径通畅,比 URL 好看更实用。