搜尋抓取

從首頁到詳情頁要跳几次:点击深度如何影响 URL 被發現

点击深度指蜘蛛從首頁出發、经過几次連結跳轉才能到達某個 URL。层級越深,被抓取和回訪的机會通常越少。本文說明蜘蛛為何偏向浅层頁面、如何用爬虫工具和服務器日誌测量實际深度,並给出用導航、相關推荐、专题聚合頁压缩层級的做法,以及避免把全站連結堆到首頁的注意事項。

搜尋抓取

從首頁到詳情頁要跳几次:点击深度如何影响 URL 被發現

一個 URL 被發現,往往不是因為它在 Sitemap 里,而是因為蜘蛛顺着某條連結走到了它。走這一趟需要几跳,就是点击深度。

点击深度是什么,為什么值得盯

点击深度是從首頁算起,经過几次連結点击能到達目标頁面。首頁是蜘蛛最常訪問、也最優先解析的頁面,第一层連結获得的机會最多,越往下越少。這不是某條寫在明面上的規則,而是抓取资源有限时的自然结果:蜘蛛每次来訪的時間、带宽和可抓取的頁面數都有上限,先用在容易走到的地方,剩下的排在後面。

蜘蛛為什么偏向浅的頁面

多數抓取策略带有广度優先的倾向:先把同一层級能拿到的 URL 排队,再往下走。首頁能分發的連結机會有限,如果首頁只有几十個入口,第二层能分到的關注就那么多。再加上不少深层頁面更新频繁却没人鏈,深度越大,被重复訪問的概率越低。

深度通常来自两處

  • 结构深度:分類树本身很長,例如首頁—一級類—二級類—子類—列表—詳情。
  • 連結缺失:頁面存在,但除了搜尋框和 Sitemap,没有任何可点击連結指向它。

常见的深度陷阱

  • 入口只在站内搜尋:搜尋结果頁一般不作為抓取入口,蜘蛛不會替你輸入關鍵詞。
  • 分頁鏈太長:列表翻到第二十頁以後基本没人走,而新的詳情頁只挂在那里。
  • 依赖 JS 加载列表:能用,但多一层渲染,出問题的概率也更高。
  • 篩選參數生成大量新路径:同一批内容被拆成無數层級,把抓取名額摊薄。
  • 導航只到分類頁,詳情頁全靠加载更多。

先量一量,再動手

別凭感觉判断深度。可以做的几件事:用站内爬虫工具跑一遍,按距离首頁的跳數排序,看看有多少重要頁面落在四跳以外;翻服務器日誌,观察蜘蛛實际到達的层級分布;把 Sitemap 里出現的 URL 和站内連結能覆盖到的 URL 做對比,差集往往就是只靠申报才被發現的頁面。

压缩层級的几種做法

  1. 让分類頁直接鏈到少量重点詳情頁,而不是只鏈下一個列表頁。
  2. 增加相關推荐、最新更新這類模块,把不同分支的頁面互相连起来。
  3. 用专题頁、聚合頁承接一批同類 URL,让它們從五跳變成三跳。
  4. 面包屑保證向上可走,路径断了的頁面至少有一條回程。
  5. 把 Sitemap 当作补充申报通道,它能让蜘蛛知道地址存在,但缺少内鏈的頁面在更新後仍然容易被忽略。
不要為了压深度把全站連結堆到首頁。首頁連結太多,每個連結分到的關注都會下降,反而稀释了真正重要的入口。

深度不是唯一目标

扁平化的前提是有取舍。重要頁面两到三跳内可達,長尾内容四到五跳也能接受,真正的麻烦是重要頁面比長尾還深。調整结构时,先在日誌里確認蜘蛛已经在走新路径,再决定要不要繼續拆层級。

上线後可以核對的清單

  • 首頁到主要詳情頁的跳數是否稳定在三跳以内。
  • 新發布的 URL 是否在一天内至少被一條内鏈指向。
  • 是否存在只能靠 Sitemap 触達、站内没有連結的頁面。
  • 列表分頁是否给出了通往深层的替代入口。
  • 日誌中蜘蛛到達的层級分布是否與预期一致。

点击深度不决定排名,但它决定蜘蛛能不能顺着路找到你。把路径理顺、把入口留够,剩下的交给時間和内容本身。