很多人把蜘蛛当成一种可以无限调用的资源——只要入口页够多、外链够密,抓取量就会线性上涨。实际观察下来,情况往往相反:入口页规模翻倍之后,单个页面被访问的次数反而下降了。这背后是抓取配额在起作用。
抓取配额是什么
简单说,搜索引擎对每个站点在单位时间内的抓取总量是有上限的。这个上限不是某个公开的数字,而是由几方面共同决定:站点在历史抓取中的整体表现、服务器响应是否稳定、页面更新频率与内容差异度,以及站点规模本身。蜘蛛池的入口页再多,如果服务器经常超时,或者页面之间高度相似,配额也不会随之增长。
配额更像是一种分配结果,而不是可以单独申请的资源。它决定了蜘蛛一天来几次、每次抓多少个 URL、抓到第几层就停下来。
入口页数量与单页机会的稀释
假设某个站点每天被蜘蛛抓 300 次。你只有 100 个入口页,平均每个页面一天有三次被访问的机会;当入口页扩张到 3000 个,同样是 300 次抓取,平均每个页面要十天才能轮到一次。页面被访问的间隔越长,新内容越难被及时看到,日志上就会表现出“总抓取量没降,但每个页面都很久没来了”。
这不算蜘蛛变懒,而是总量没变,分母变大了。所以在扩张入口页之前,先确认配额有没有同步增长,比直接加页面更重要。
怎么从日志里看出配额的倾斜
- 访问频次分布:统计每个入口页被访问的间隔,看是集中在少数页面,还是相对均匀。集中说明蜘蛛已经筛出它认可的路径。
- 抓取深度:蜘蛛是从入口页继续往下走,还是抓完第一层就离开。深度停在第一层,通常意味着后续链接的可信度不足。
- 时段分布:抓取集中在某个时间段还是全天分散。集中往往说明站点响应速度参差,蜘蛛只在跑得快的时段来。
- 状态码构成:如果日志里 5xx 和超时占了明显比例,配额通常会被下调。
把有限配额用在更值得的地方
- 先保核心入口页:把更新频率高、内容差异明显的页面放在内链更浅的位置,减少蜘蛛需要跳跃的层数。
- 控制入口页总量:新增之前先淘汰长期没被访问、也没更新的页面,让分母保持稳定。
- 减少无效 URL:参数拼接、重复路径、软 404 会持续消耗抓取机会,却不带来任何价值。
- 提升响应速度:稳定在可接受的响应时间内,比偶尔很快、经常超时更有利于配额的稳定。
- sitemap 分片并保持更新时间准确:只放真正需要被发现的地址,避免每次更新都让蜘蛛重走全站。
几个容易误判的地方
推送量不等于抓取量,抓取量也不等于收录量。看到抓取次数上升就认为配额增加了,往往是把主动提交带来的短期波动当成了长期趋势。
另一个常见误判是用 robots.txt 屏蔽大量入口页来“省配额”。被屏蔽的地址依然会被发现和记录,只是不会被访问,对配额并没有正面帮助,反而可能让蜘蛛对站点结构产生误判。
小结
抓取配额决定了蜘蛛池入口页的实际效率上限。与其不断扩张入口页数量,不如先弄清楚当前配额被分到了哪里、哪些页面在消耗机会却不产出价值。把分母管住,把响应做稳,把核心路径做浅,通常比单纯堆页面更接近想要的结果。