搜尋抓取

抓取预算的分配與回收:低價值 URL 占用與高價值入口的核對

抓取预算不是固定配額,而是队列中的優先級竞争。本文從抓取日誌統計、參數頁與分頁收敛、Sitemap 與内鏈的协同、软 404 清理几個角度,梳理如何减少低價值 URL 占用、把抓取集中到核心頁面,並给出可执行的核對清單與观察指标。

搜尋抓取

抓取预算的分配與回收:低價值 URL 占用與高價值入口的核對

抓取预算這個词常被说得像一筆固定額度,實际上它更像是排队的结果:搜尋引擎根據服務器响應能力、站点整体质量和自身的抓取需求,决定在一段時間内派多少蜘蛛来、抓多少個 URL。你無法直接申請更多,但可以通過减少無效排队、把入口集中到真正重要的頁面上,間接改變抓取的去向。

先分清:不是配額,而是優先級竞争

同一時間蜘蛛能發出的請求有限,队列里的 URL 會互相竞争。一個站点如果有几萬個參數组合頁、篩選頁、重复分頁,它們不會因為“不重要”就自動排在後面——只要能被發現,就會進入队列並消耗一次抓取机會,同时挤掉一個本可以抓取正文頁的名額。

所以核對抓取预算的第一步不是看蜘蛛来了多少次,而是看它把次數花在了哪里

哪些 URL 容易占用预算

  • 带排序、篩選、追踪參數的列表頁,同一批内容被生成出大量變体 URL。
  • 分頁层級過深,翻到第 30 頁之後基本没有發現價值,但仍在 Sitemap 或内鏈里。
  • 會话 ID、打印頁、分享頁等由程序自動生成的副本。
  • 内容為空或已下架,却仍返回 200 的软 404 頁面。
  • 由站内搜尋生成的结果頁,被内鏈或外鏈带出後進入抓取范围。

這些頁面往往還有一個共同特征:站内没有真實用戶訪問路径,連結却存在于某個模板里,于是被長期反复抓取。

Sitemap 與内鏈,別同时放大同一批 URL

Sitemap 和站内連結是两條獨立的發現通道,但它們指向的目标應当一致。常见的問题是:Sitemap 里放了全量商品參數頁,導航和篩選组件又把同样的參數頁连了一遍,等于用两種方式反复强調“這些都重要”。

更稳妥的做法是让 Sitemap 承担“完整清單”的角色,只收錄你愿意被索引的規范化 URL;内鏈則承担“重要性排序”的角色,把權重压向分類、专题和核心詳情頁。两者指向冲突时,蜘蛛往往更相信内鏈與實际訪問資料。

回收预算的核對清單

  1. 用抓取日誌按目錄、參數模式統計抓取次數,排出前十類最常被抓的 URL 形態。
  2. 對其中没有检索價值的形態,優先用 robots.txt 屏蔽抓取;注意被屏蔽的 URL 仍可能被索引,必要时配合 noindex,但 noindex 需要頁面允许被抓取才會生效。
  3. 對内容重复的變体,统一到 canonical 目标,並让内鏈只指向規范版本。
  4. 把 Sitemap 拆分為核心頁與長尾頁,核心頁保持較高更新频率,長尾頁降低提交量。
  5. 检查分頁與篩選组件是否被模板批量輸出,必要时改為交互加载,减少可發現的 URL 數量。
  6. 清理软 404,让已下架頁面返回 404 或 410,避免持續被抓。

观察指标與調整节奏

調整之後不要只看蜘蛛總訪問量,那個數字可能因為屏蔽而下降,但不代表抓取變差。更值得關注的是:核心目錄的抓取占比是否上升、新上线頁面的首次抓取時間是否缩短、日誌里重复抓取同一 URL 的次數是否减少。

這些變化通常需要几周時間才能在日誌里稳定下来,期間不要频繁改動規則,否則很难判断是哪個動作起了作用。

抓取预算優化的目标不是让蜘蛛来得更多,而是让每一次抓取尽量落在有检索價值的 URL 上。

小结

把抓取看成一场排队竞争,思路會清晰很多:减少無意义的 URL 進入队列,把入口和連結集中在核心頁面上,再用日誌驗證抓取结构是否真的發生了位移。這比單纯追求蜘蛛數量更接近問题的本质。