很多站长只关心“蜘蛛来没来”,却不太关心“蜘蛛来了之后把时间花在哪”。日志里显示蜘蛛每天都在抓取,可重要栏目还是动静很小,这时候问题通常不是蜘蛛不来,而是抓取配额被大量低价值 URL 消耗掉了。
先搞清楚抓取预算是什么
抓取预算可以粗略理解为:搜索引擎在一段时间内愿意为你的站点投入的抓取次数和带宽。它主要受两方面影响——站点本身的抓取能力(响应速度、稳定性、错误率),以及爬虫判断哪些 URL 更值得优先抓。前者是技术问题,后者是价值判断问题。
它不是某个可以一键“提升”的开关,而是通过减少浪费、明确优先级来间接改善的。所以自查的重点是找出浪费在哪里。
从日志里先看四个数字
- 抓取总量与时间分布:一天抓多少次,集中在什么时段,是否与访客高峰撞在一起。
- 状态码分布:200、301、404、5xx 各占多少。大量 3xx 和 4xx 基本都是白跑一趟。
- 抓取最多的目录:按路径前缀聚合,看蜘蛛把时间给了哪些栏目,是不是和你心里的重点一致。
- 被反复抓取的单个 URL:同一个地址一天被抓几十次,通常说明内容频繁变动,或者页面结构本身有问题。
统计时把 URL 里的查询参数先去掉再聚合一次,往往能看到更真实的分布。
常见的几类抓取浪费
参数与筛选组合
筛选、排序、分页参数能组合出成千上万个 URL,内容却高度相似。可以在 robots.txt 屏蔽、加 canonical、对结果页加 noindex,按实际情况选一种,不要三种同时上还互相打架。
搜索结果页与日历归档
站内搜索页、历史归档日历、空标签页,数量大、重复度高,一般对抓取没有正向价值,却很容易吃掉可观的比例。
软 404 与重定向链
空页面返回 200、一次跳转拖成多跳,都会让蜘蛛在无意义路径上多走几趟,还顺带浪费服务器资源。
慢响应
页面响应慢,蜘蛛单位时间能抓的页面就少。首字节时间长期偏高时,抓取量往往会明显下滑,这一点在服务器维护时值得一并留意。
自查后的处理顺序
- 先修 5xx 和超时,这是纯损失,排在第一位。
- 再收敛重复 URL,减少同一内容的多重入口。
- 然后精准维护站点地图,只放真正希望被收录、且状态正常的地址。
- 最后调整内链,把抓取和权重引向核心栏目。
抓取预算优化的目标不是让蜘蛛抓得更多,而是让每一次抓取都落在你希望被看到的内容上。
别用极端手段
为了省配额就把大量目录一封了之,很容易误伤仍在正常更新的栏目;靠爬虫 UA 做拦截更要谨慎,真实蜘蛛和伪造 UA 混在一起时,误拦的代价通常比多抓几次大得多。每次调整后给自己留出观察窗口,对照日志看抓取结构有没有按预期变化,再决定下一步,而不是改完就换下一个地方继续改。