搜索抓取

URL 层级与抓取深度:目录越深,蜘蛛还愿意往下走吗

从入口页到目标页要点击几次,比 URL 里有多少级目录更影响蜘蛛的行走意愿。本文梳理抓取深度的计算方式、深层页面容易被漏掉的原因,以及用面包屑、栏目聚合页和 Sitemap 降低实际跳数的做法,并提醒轻易改 URL 结构的成本。

搜索抓取

URL 层级与抓取深度:目录越深,蜘蛛还愿意往下走吗

不少运营都听过一句经验之谈:目录层级别超过三层。但蜘蛛在判断一个地址值不值得继续往下走时,看的并不是 URL 里有几条斜杠,而是从它已经知道的入口出发,要点击几次才能到达。这两件事有关联,但不等同。

蜘蛛算的深度,是点击跳数

蜘蛛会把首页、Sitemap 里提交的 URL、以及外链指向的地址当作已知入口,沿着它能解析出来的链接一步步往前走。一个页面从首页点两次能到,它的深度就是 2;哪怕 URL 里写着五级目录,深度依然是 2。反过来,某个页面 URL 只有一级,但全站没有任何链接指向它,那它就只能靠 Sitemap 提醒蜘蛛它的存在,实际被抓的频率通常也不高。

目录结构仍然会间接影响抓取

  • 中间页面是否有人承载链接。目录越深,越容易形成从栏目页到列表页再到详情页的长链条,中间任何一环没放链接,后面的页面就容易变成孤岛。
  • 内链的添加成本。结构清晰时,加一个栏目页就能带出一批详情页;结构混乱时,只能靠手工往首页或相关页面硬塞链接。
  • 后期改版的风险。把深目录拍平成浅目录,意味着大量 URL 变更和重定向,这部分成本往往被低估。

深层页面被漏掉,通常不只是因为深

更常见的情况是:深层页面既没有站内链接,内容更新也不频繁,Sitemap 里虽然列了,但抓取优先级排在后面。这时只改目录名作用有限,要把发现通道和更新信号一起补上。

让深层页面更容易被走到的做法

  • 面包屑。每层都能回到上一级,等于给蜘蛛一条固定的回程路,也让深层的同级页面互相串联起来。
  • 栏目页与聚合页。一个栏目页能列出几十条详情链接,它是把实际深度从五跳压到三跳最省力的手段。
  • 相关内容模块。在正文底部放几条同主题链接,既服务用户,也给蜘蛛多一条可选路径。
  • Sitemap 与内链双通道。Sitemap 负责兜底发现,内链负责提高被抓频率,两者并不冲突。

不要为了变浅轻易改 URL

把一个多层地址改成单层地址,短期看是清爽了,但旧地址、外链、已有的收录状态都要重新处理,处理不好还会出现新旧地址同时被抓的情况。除非目录结构本身有硬伤,否则优先用内链和聚合页来降低实际跳数,而不是动 URL 本身。

动手前的检查清单

  1. 从首页出发,点击几次能到达最重要的商品页或文章页?超过四次就值得排查。
  2. 每个栏目页是否列出了子栏目的入口,还是只挂了最新几篇内容?
  3. Sitemap 里的 URL 是否都真的可访问,有没有混进 404 或跳转地址?
  4. 有没有页面既不在一级栏目里,也不在面包屑里,只存在于后台链接中?
深度只是影响抓取的因素之一。站内链接的质量、页面自身的更新频率、服务器的响应速度,同样会决定蜘蛛下一次还愿不愿意走这条路。