“蜘蛛总抓那些没用的页面,就是不来抓我的新内容”——这类抱怨背后,其实是一个可以量化的分配问题。抓取预算不是搜索引擎发给你的固定额度,而是蜘蛛在单位时间内愿意在你这个站上花掉的请求次数,它受响应速度、页面总量、更新频率和过往抓取体验共同影响。想调它,先得知道它被花在了哪里。
先看日志,而不是先改页面
后台的“已收录”数量只告诉你结果,日志才告诉你过程。把最近 30 天的蜘蛛访问记录按目录聚合一次,再按状态码和响应时间各聚合一次,三张表放在一起看,问题通常就浮出来了。
- 某个目录的请求占比远超它的内容占比,说明这里有东西在持续吸引蜘蛛。
- 大量请求落在 404、301 或带参数的地址上,说明站内链接和跳转还不干净。
- 某些页面平均响应时间明显偏高,蜘蛛在这里会主动降速,连带影响同一主机名下其他页面。
三类常见的预算黑洞
翻日志时,下面几类页面出现的频率往往高得超出预期。
- 参数组合页:筛选、排序、翻页参数能组合出成百上千个地址,内容却高度重复。
- 自动生成的归档:标签页、作者页、日期归档、搜索结果页,数量随内容增长而膨胀,单个页面信息量很低。
- 失效与跳转:老链接没清、重定向链太长,蜘蛛每走一次都要多花几个请求。
这些页面本身不一定有害,但如果它们吃掉了总抓取量的一半以上,而你的新品页、详情页只能分到零头,那就是分配出了问题。
把抓取资源往重点页面挪
方向是“减少无谓请求”加“增加重点入口”,两者要一起做,只堵不疏会让蜘蛛找不到新内容。
减少无谓请求
- 参数页加 noindex 之前先确认它确实没有独立价值,别把有用的页面一起屏蔽掉。
- 搜索结果页、内部搜索接口,用 robots.txt 拦住或加 noindex。
- 清理跳转链,让旧地址一步到位指向新地址。
- Sitemap 只放你希望被正常抓取的地址,别把整个数据库都塞进去。
增加重点入口
- 在导航、面包屑、相关内容模块里,给新页面和多层级详情页提供稳定的内链入口。
- 列表页分页保持可抓取,别让详情页只能通过“加载更多”按钮到达。
- 让重要页面之间互相链接,形成几个内链簇,而不是所有页面都只连向首页。
响应速度是抓取节奏的地板
同一台服务器上,如果某个接口经常三五秒才响应,蜘蛛对该主机名的整体抓取速率会被压低。日志里的平均响应时间和超时次数,值得和抓取频次放在一张图里看:速度掉下去之后,通常过一段时间抓取量也会跟着掉。数据库慢查询、图片直出、未缓存的动态页面,都是常见的拖累点。
抓取预算的调整不是一次性操作。改完结构后隔两三周再拉一次日志,对比目录分布有没有变化,比凭感觉判断可靠得多。
一个可执行的检查顺序
- 导出最近 30 天的蜘蛛访问日志,按目录、状态码、响应时间分别聚合。
- 列出请求量前 20 的目录或 URL 模式,判断它们对用户是否有价值。
- 确认哪些属于重复参数页、自动归档页,决定是合并、noindex 还是拦住。
- 检查重点页面是否至少有两条站内路径可以到达。
- 整理 Sitemap,只保留需要被发现的地址,并保持更新。
- 两三周后再看一次日志,对比抓取分布与重点页面的被访问次数。
抓取预算是争来的,不是等来的。把日志读明白,再动手改结构,方向会清晰很多。