抓取预算(crawl budget)是搜索引擎在一定时间内愿意、也能够从你的站点抓取多少 URL 的额度。它由两部分共同决定:一是服务器能承受的抓取速率上限,二是搜索引擎判断这里有多少值得抓的新内容和更新内容。两者取较小值,就是你实际拿到的抓取量。
先说清楚适用范围:页面总量在几千以内、结构简单的站点,抓取预算通常不是瓶颈,收录慢更可能是页面质量、重复内容或内链深度的问题。真正被卡住的是 URL 数量大、组合多、更新频繁的站点,比如电商、分类信息、招聘、票务类。
哪些 URL 在消耗抓取额度
抓取量被吃掉,往往不是因为页面太多,而是因为低价值 URL 太多。常见的有这几类:
- 参数组合与筛选页:颜色加尺码加排序加价格区间,组合起来数量惊人,真正有人搜的可能只有少数几个。
- 站内搜索结果页:只要能被内链或站点地图带到,就会被反复抓取。
- 返回 200 的空页面:无结果的筛选页、已下架的商品页仍旧返回 200,会被当成正常页面反复抓取。
- 同一页面的多种写法:大小写、末尾斜杠、带不带 www 都能打开,等于把抓取量摊薄成好几倍。
- 过长的跳转链:http 跳 https、再跳 www,一次访问消耗几次请求。
- 慢响应与偶发错误:页面响应慢、零星出现 5xx,会让搜索引擎主动降低抓取速率,这是最容易被忽视的一种消耗。
怎么把额度留给重要页面
1. 减少不需要被发现的 URL
筛选、排序、会话、追踪类参数,优先在服务端或模板层控制,不让它们出现在内链和站点地图里。内链是搜索引擎发现 URL 的主要入口。
2. 无效页面给出明确状态
无搜索结果、已下架、已过期的页面,返回 404 或 410,比返回 200 再加一句「暂无内容」要好。
3. 统一 URL 写法
选一种形式,例如统一小写、统一末尾斜杠规则、统一 https 且不带 www,其余形式用 301 跳过去。别让多个写法长期并存。
4. 把重要页面放在容易被找到的位置
首页和栏目页上的稳定内链,以及只放重要 URL 的站点地图,都能抬高这些页面的抓取优先级。
5. 保持服务器稳定
抓取速率是双向的。响应时间稳定、错误率低的站点,更容易拿到更高的抓取量。
两个容易踩的坑
用 robots.txt 屏蔽来省抓取:屏蔽后搜索引擎确实不再抓取,但如果外链指向这些 URL,它们仍可能出现在索引里,只是没有内容摘要。要防止收录,得先让搜索引擎抓得到,再返回 noindex。
只看抓取量不看抓取对象:抓取次数上涨不等于好事。如果涨的都是筛选页和参数页,重要页面的抓取可能一点没变。
判断抓取预算有没有被浪费,最直接的方法是把服务器日志按 URL 归类:抓取次数最多的前 100 个 URL 里,有多少是你希望被收录的?这个问题答不上来,其他优化都是猜。
自查顺序
- 看被大量抓取的 URL 类型,找出消耗最大的一类。
- 确认这些页面的返回状态是否正确,有没有该 404 却返回 200 的。
- 检查是否存在同一页面的多种 URL 写法。
- 检查跳转链长度,以及服务器响应时间和错误率。
- 调整内链与站点地图,只保留重要 URL。
- 观察一段时间后再看日志,比较抓取结构的变化。
抓取预算并不神秘,本质是把有限的抓取次数花在值得的页面上。它不保证收录,但能减少无谓消耗,让重要页面的抓取更稳定。