搜索抓取

列表页翻到第几页就停了:分页抓取深度与深层内容的补位

分页列表是蜘蛛发现内容页的主要通道,但越往后的分页越少被抓。本文讲清这背后的取舍逻辑,并给出让分页保持可抓、为深层内容补第二条通道的具体做法,以及调整之后该看哪些日志指标来验证。

搜索抓取

列表页翻到第几页就停了:分页抓取深度与深层内容的补位

蜘蛛翻页,翻到一定程度就停了

做站点运营的人常会遇到一个现象:列表页第一页抓得勤,第二页、第三页偶尔来一次,再往后基本没动静。这不是蜘蛛偷懒,而是它在有限的时间和带宽里做取舍。理解这个取舍,比反复提交 Sitemap 更有用。

为什么越往后的分页越少被抓

  • 抓取预算有限:一个站点每天能分到的抓取次数大体稳定,蜘蛛会把次数优先给更新频繁、结构清晰的页面。
  • 链接权重随层级衰减:第 20 页的链接要经过十几次跳转才被看到,它在站内的信号本就弱。
  • 页面相似度高:分页列表之间内容重叠大,蜘蛛判断边际价值低,自然不会深挖。
  • 参数组合膨胀:排序、筛选、每页数量这些参数一旦叠加,URL 数量成倍增长,蜘蛛更会提前收手。

先量,再改

抓取日志里筛出含 page、p、start 之类参数的 URL,统计被访问的页数分布和返回状态码。很多站点会发现第 5 页之后就几乎没有记录。这个数字就是你当前的分页深度上限,改版前后做对比才有意义,否则只是凭感觉调整。

让分页可抓,但别指望它无限延伸

分页链接写成真实的 a 标签

用按钮加事件加载下一页,蜘蛛多半看不到后续链接;即便能执行 JS,成本也高、出错概率也大。把「下一页」做成可点击的正常链接,是成本最低的做法。

控制可索引的分页范围

并不是所有分页都需要被抓。一个带三个筛选维度的列表,可能产生上万条组合 URL。可以只保留一条主分页路径,其余组合用参数收敛或阻止抓取,把预算留给真正承载内容的页面。

给列表页一个稳定的排序

默认按时间倒序,新内容能很快进入第一页并顺着内链被爬。如果是随机排序,蜘蛛每次看到的内容都不一样,反而降低判断效率。

深层内容需要第二条通道

分页翻不到底,不代表深层内容就没有被发现的机会。常见的补位方式有:

  • 在分类下再分子类,把内容层级压到三到四层;
  • 用标签页、专题页、热门排行等聚合入口,把旧内容重新暴露在第一页可达范围;
  • 把不指望靠分页发现的 URL 写进 Sitemap,作为独立的发现通道;
  • 在正文里做相关阅读、上一篇下一篇的内链,让老内容持续被引用。
分页是发现通道,不是索引目标。它的作用是让蜘蛛顺着走到内容页,所以判断标准只有一个:顺着它能走到的地方,是否覆盖了你真正在乎的页面。

几种常见做法的副作用

  • 把深层分页设成 noindex,follow:可以,但要确认链接仍被跟随,且不要误伤内容页。
  • 用无限滚动替代分页:要保留一套可抓的分页 URL 作为退路,否则蜘蛛只能看到首批内容。
  • 给分页加 canonical 指向第一页:需谨慎,这会削弱后续分页上内容页的发现信号。

改完之后看什么

调整后两到四周,回到日志看三件事:分页抓取的页数分布有没有变化、深层内容页的首次抓取时间是否缩短、内容页整体被抓次数是否上升。如果深层页面的抓取没有变化,问题往往不在分页本身,而在内容更新频率或整站的抓取预算上,这时需要换个方向排查。