抓取總量有限,分配問题比“抓得多”更實际
搜尋引擎對單個站点的抓取次數與並發有上限,這個上限不會因為站点内容變多而自動翻倍。因此运营中更值得核對的問题不是“蜘蛛今天来了多少次”,而是這些抓取次數落在了哪些目錄、哪些模板上。如果日誌里大量請求集中在篩選參數頁、站内搜尋结果頁,核心内容的更新就可能要等更久才會被回訪。
第一步:把日誌按目錄和模板归類
直接看總量意义不大,先按路径前缀和頁面模板做一次归類,通常能得到比較清晰的分布。
- 按一級目錄統計請求次數,例如 /product/、/news/、/tag/、/search/。
- 区分頁面模板:列表頁、詳情頁、分頁、归档頁、篩選结果頁。
- 單獨标记狀態碼分布:200、301/302、404、5xx 各自占比。
- 记錄响應時間区間,避免把抓取频次下降直接誤判為其他因素。
归類之後,把每個目錄的抓取次數與“有持續更新價值的 URL 數量”放在一起看,匹配度低的目錄就是下一步要處理的對象。
第二步:识別空轉抓取
常见的低價值入口来源
- 篩選、排序、價格区間等參數组合頁,同一批内容被反复以不同 URL 請求。
- 站内搜尋结果頁,尤其是被導航或内鏈直接指向的。
- 分頁過深的列表頁,越往後内容越舊,回訪價值有限。
- 已被 noindex 但仍在多處内鏈中出現的頁面。
- 协议、主机名、结尾斜杠不统一造成的重复入口。
判断空轉不要只看頁面好不好看,而是看它是否值得被單獨發現和回訪。如果某個頁面的内容完全由其他 URL 组合而成,又没有獨立入口需求,它大概率在消耗抓取次數。
第三步:收敛入口,而不是只依赖 robots
很多人第一反應是寫 Disallow。需要明确两点:robots.txt 阻止的是抓取,不是索引;而 noindex 必须让頁面被成功抓取後才能讀到。两者同时使用时,可能出現規則寫了但頁面仍以其他形式出現的情况。
更稳妥的顺序是先减少連結入口:
- 從導航、列表、相關推荐中移除低價值頁面的連結。
- 參數頁尽量通過站内交互生成,不生成可長期訪問的静態連結。
- 對确實需要保留但不希望被索引的頁面,確認它没有被内鏈大面积指向,再配合 noindex。
- 對已失效路径做 301 或 410,不要長期返回 200 的空壳頁。
抓取预算更像一條通道而不是可以争取的額度:入口越少越清晰,核心頁面的回訪就越不容易被稀释。
第四步:让 Sitemap 與内鏈表達同一優先級
Sitemap 是 URL 發現的补充通道,不是抓取承诺。如果 Sitemap 里混入大量低價值頁面,而内鏈又指向完全不同的一批 URL,蜘蛛接收到的優先級信号就是矛盾的。
- Sitemap 只保留稳定返回 200、可索引、有獨立價值的主干 URL。
- 分片文件按目錄或内容類型组织,便于後續核對覆盖情况。
- lastmod 要反映真實内容變更,避免無變化也频繁更新時間戳。
- 内鏈的锚文本與所在位置,尽量指向你希望優先回訪的頁面。
第五步:設定观察窗口與核對指标
- 固定一個時間窗口,例如连續四周,對比調整前後的目錄抓取占比。
- 观察核心目錄的首次發現時間與回訪間隔是否缩短。
- 確認服務器 5xx、超时比例没有随調整上升。
- 检查是否出現新的重复入口,例如參數變体或大小寫差异。
調整的效果通常不會立竿见影,抓取节奏的變化往往需要几天到几周才在日誌中体現出来。這個阶段更适合做小幅、可回滚的改動。
几個容易被忽略的点
- 外部連結(包括蜘蛛池類工具批量投放的入口)能提高 URL 被發現的概率,但不會改變站点自身的可承受抓取量,入口质量仍然重要。
- 服務器响應時間波動會直接影响並發表現,抓取量下降有时是服務器端問题,不是内容問题。
- 站点改版後舊路径未清理,會持續产生重复發現。
整体思路可以归纳為一句话:先看抓取次數落在哪里,再决定减少哪些入口、保留哪些入口,最後用日誌驗證變化,而不是靠猜测去堆連結。