搜索抓取

标签页、归档页与站内搜索:蜘蛛在自动生成的页面里会怎么走

标签页、归档页、站内搜索结果页大多由程序自动生成,链接多、内容相似、数量容易失控。本文从 URL 发现和抓取路径的角度,说明蜘蛛为什么会在这类页面里打转,哪些该保留、哪些该收缩,以及内链和 Sitemap 该如何配合,让抓取请求更多落在真正需要更新的页面上。

搜索抓取

标签页、归档页与站内搜索:蜘蛛在自动生成的页面里会怎么走

很多站点的页面不是手写的,而是由程序自动生成的:标签页、分类归档、日期归档、作者页、站内搜索结果页。它们数量容易失控,却又是蜘蛛进站后最容易踩进去的一类路径。这篇文章聊的是,这类页面在 URL 发现和抓取路径上扮演什么角色,以及哪些该留、哪些该挡。

为什么蜘蛛容易走进这些页面

自动生成的页面通常有三个特征:链接数量多、彼此互相链接、每页都能再点出下一批链接。对蜘蛛来说,这是一条不断分叉的通道。从首页到一篇文章可能只需要两三次点击,但从首页点进一个标签,再点进标签下的另一篇文章,再点进那篇文章的标签,路径就开始循环了。

更麻烦的是,这些页面的内容往往高度相似。同一个标签下的列表,和分类页、归档页的列表,可能只差一个标题和排序方式。

标签页:是入口还是黑洞,取决于数量

标签页本身不是坏东西,它是组织内容的自然方式,也是蜘蛛发现同一主题下其他文章的一条捷径。问题出在规模上:如果一篇文章挂七八个标签,站内又有一两千个标签页,每个标签页都从文章页链接出去,抓取请求就会被大量分配到这些相似列表上。

判断标准可以简单一点:这个标签下的文章数量是否足够多,用户是否真的会点进去。长期只有一两篇文章的标签页,继续让蜘蛛抓的意义不大。

归档页与日期页

按年、按月归档的页面做时间线很方便,但如果每个月只有几篇内容,归档页就会变成一堆内容稀薄的列表。这类页面可以留给人看,但不必都让蜘蛛抓。

可以这样处理

  • 只保留年度归档,把月度归档收敛掉。
  • 归档页保持在导航的较浅层级,不要和正文抢内链位置。
  • 内容确实很少的归档页,用 noindex, follow,让蜘蛛不被这些列表本身占位,但仍能顺着链接走到文章。

站内搜索结果页:一般不建议放开

站内搜索页会按关键词生成数量近乎无限的 URL,其中大量是空结果或重复结果。放开抓取的常见后果是,蜘蛛把时间花在这些一次性地址上,而真正需要更新的页面反而在排队。

更实际的做法是:搜索页对用户开放,对蜘蛛关闭。可以在 robots.txt 里挡掉带搜索参数的路径,同时在页面上加 noindex。两者配合着做,不要只做一个,之后结合服务器日志看看蜘蛛是否仍在请求这些地址。

聚合页要不要放,看三个信号

  1. 搜索需求:用户会不会真的搜到这类页面,并点进去。
  2. 内容独立性:它是否有自己的标题和说明文字,而不是一长串纯链接。
  3. 数量:把这类页面总数算一遍,如果比正式内容还多,就需要收缩。

内链怎么给,蜘蛛就怎么走

蜘蛛没有直接判断页面价值的能力,它靠链接的数量和出现位置来推断。一个被每篇文章页脚都链接的标签页,会被当成重要页面;一个只在正文里出现一次的链接,被赋予的分量就低得多。

所以,想让蜘蛛优先抓的内容,应该出现在导航、频道页、相关阅读这些位置;不想让它花时间的聚合页,就别放在全站侧栏或页脚。

用 Sitemap 补充,而不是替代

Sitemap 适合列出你希望被发现的正式页面,不适合把所有自动生成的 URL 都塞进去。把上千个标签页写进 Sitemap,等于又告诉蜘蛛一遍这些也重要。定期清理,让它只包含真正需要更新的地址,信号会更清晰。

观察与调整

改动之后可以从几处看效果:日志里这些路径的抓取次数是否下降,正式页面与列表页的抓取比例是否变化,Sitemap 中页面的被抓取比例是否上升。不必一次改太多,先收一个页面类型,观察两周再决定下一步。

自动生成的页面不是不能有,而是要有边界:给用户留入口,给蜘蛛留一条更短的路。