很多站点的問题不是“没被抓”,而是抓取资源被用在了低價值路径上。列表頁、篩選頁、分頁頁被反复抓取,詳情頁却長期停留在“已發現未抓取”。這類現象通常被归到抓取预算(crawl budget)分配問题上。
抓取预算由什么决定
可以粗略理解為:站点可承载的抓取速率乘以蜘蛛愿意投入的時間。前者受服務器响應、並發承受能力影响,後者受站点權重、内容更新频率、抓取质量反馈影响。两者都無法直接控制,但都能通過站点自身的结构調整間接影响。
- 抓取速率上限:由服務器响應時間、超时率、错誤率共同决定。响應越慢、错誤越多,蜘蛛越倾向于降速。
- 抓取需求:由 URL 總量、更新频率、内鏈指向强度决定。URL 越多、层級越浅、變化越频繁,需求越高。
失衡的几個典型信号
- 列表頁每天的抓取次數遠高于詳情頁,但列表頁本身没有實质内容變化。
- 大量带參數的篩選组合被反复抓取,返回内容高度相似。
- 詳情頁被發現後長期不抓,日誌里只有“發現”没有“請求”。
- 抓取總量不低,但有效内容頁的覆盖比例持續偏低。
栏目頁與詳情頁要分開看
列表頁與栏目頁
這類頁面的價值在于“指路”,不在于“留人”。如果列表頁本身没有獨有信息,且翻頁、排序、篩選參數可以無限组合,它們會持續吃掉预算。處理方向是收敛可抓取组合,而不是简單屏蔽全部參數——完全屏蔽有可能连带切断詳情頁的發現路径。
詳情頁
詳情頁數量大、單頁更新少,通常需要更稳定的入口。建议保證每個詳情頁至少有一條来自稳定层級(栏目首頁或分類頁)的静態連結,而不是只依赖“最新發布”這類會随内容滚動的模块。
調整顺序建议
- 先看日誌分层:把請求按目錄或模板归類,算出各层級的請求占比與有效頁面占比。
- 收敛低價值路径:對無獨立内容的分頁、排序、會话類參數做規范處理,明确唯一可抓地址。
- 补强高價值入口:用内鏈、Sitemap、面包屑把詳情頁入口固定下来,减少入口随内容滚動而消失的情况。
- 观察服務器侧指标:平均响應時間、超时率、5xx 比例是否稳定。抓取速率的變化往往先体現在這些指标上。
- 小步調整並留观察期:一次只改一類路径,至少观察一到两周再决定下一步。
容易踩的坑
- 為了“省预算”把整類頁面一刀切屏蔽,结果切断了發現路径。
- 只看抓取總量,不看抓取结构,誤以為量上升就是改善。
- 把 Sitemap 当成萬能入口,忽略内鏈才是常態化的發現通道。
- 調整後立刻下结论,没给蜘蛛重新学习的周期。
抓取预算的優化本质是“把有限的請求次數,花在更有内容價值的地址上”,而不是追求抓取量最大化。
最後提醒一点:抓取行為受多種因素共同影响,任何調整都只是提高被合理抓取的概率,不能保證收錄结果。持續记錄、分层對比,比一次性大改更容易看出真實變化。