列表页在蜘蛛池里的实际角色
很多人把入口页理解成一张张独立页面,真正跑起来会发现,承担 URL 分发任务最多的其实是列表页。蜘蛛从入口进来,顺着链接一层层往下走,能走多远、走到哪些目标页,很大程度取决于列表和分页的结构。入口页本身写得再规整,如果列表结构混乱,后面的 URL 依然沉在下面出不来。
分页的三种常见写法
静态路径分页
类似 /list/2.html、/page/3/ 这种写法,URL 干净、可缓存、容易被反复抓取,在蜘蛛池里通常是首选。
参数分页
?page=2 这类参数分页也能被抓,但要注意参数顺序、大小写和多余跟踪参数带来的重复。同一个列表出现 ?page=2、?page=02、?page=2&utm 多个版本,等于把抓取次数拆成几份。建议统一参数拼接规则,多余参数在服务端直接 301 到规范地址。
JS 加载更多与无限滚动
这两种方式对浏览体验不错,但对 URL 发现不太友好:如果列表数据由接口异步返回,HTML 里没有对应的 a 标签,蜘蛛就看不到这些链接。要用的话,至少保留一份静态降级链接,或者把翻页入口放在可抓取的位置。
每页放多少条链接
没有统一数字,但可以从两个极端避开:
- 一页塞进上百条链接,单页权重被摊薄,蜘蛛也不一定每条都跟;
- 一页只放三五个链接,页面层级被迫拉深,不少 URL 因为跳数太多而抓不到。
做入口页分发时,常见做法是每页 15~30 条,重要目标页尽量放在前两页,让它们在更少的点击次数内被触达。
分页数量和翻页深度
翻页越往后,被访问的概率越低。如果日志里第 1、2 页访问频繁,第 20 页之后几乎没有记录,说明后面的分页基本是浪费。两个处理方向:
- 控制总页数,不要为了凑数量批量生成没有实际内容的分页;
- 把真正有价值的 URL 集中到浅层分页,深层分页只保留必要的历史归档。
归档页和标签页的取舍
归档页按时间排列,结构稳定,URL 一旦生成基本不用改,适合长期做 URL 发现的载体。标签页则容易失控:一个站几百上千个标签,彼此内容高度交叉,翻来覆去都是同一批链接。
如果确实要用标签页,建议:
- 限制标签数量,只保留有实际聚合意义的;
- 给低价值标签页加 noindex,但要清楚 noindex 只影响收录,页面里的链接仍可能被跟随;
- 不要把标签页当成主要分发入口,它更适合做补充。
列表和分页的作用是把蜘蛛送到目标页,而不是自己成为内容。结构越简单、层级越浅,越容易达到目的。
怎么验证这套结构有没有效
还是回到日志。重点看三件事:列表页和翻页被访问的频率、后面几页有没有被抓过、目标页的首次访问是来自列表还是首页。如果翻页几乎零访问,先检查链接是不是静态可抓取,再检查是否被 robots、nofollow 或者前端路由挡住。
结构上的调整通常不会立刻看到变化,也不保证一定带来收录,但至少能让蜘蛛少走弯路,把有限的抓取次数用在真正想被看到的 URL 上。