搜索抓取

蜘蛛多久回来一次:影响页面重访频率的几个信号

蜘蛛抓取不是一次性的。页面被首次抓取后,下一次访问间隔由引擎调度和站点信号共同决定。本文拆解内容更新、Last-Modified、Sitemap lastmod、内链位置、整站错误率等因素如何影响重访节奏,并给出用日志自查的方法与几个常见误区。

搜索抓取

蜘蛛多久回来一次:影响页面重访频率的几个信号

蜘蛛抓取不是一次性的动作。一个新页面被首次抓取之后,搜索引擎会按自己的节奏安排下一次访问,这个间隔可能是一天、一周,也可能更久。站点无法直接指定多久来一次,但可以通过若干信号影响排队顺序。这篇文章讲的是重访这件事:哪些因素让它变快,哪些让它变慢。

重访频率的两层来源

先分清责任。第一层是引擎侧的抓取容量与调度策略,站点无法改变;第二层是站点发出的信号,包括页面价值、更新情况、服务器质量。日常优化能动的只有第二层。所以看到某个页面很久没被再抓时,先判断它是被降频,还是压根排在队尾。

会被读到的几个信号

真实的内容变化

最直接的信号是页面确实变了。有新段落、有新数据、有更新的商品信息,蜘蛛下次访问时内容指纹不同,这类页面更容易获得更高频的调度。反之,如果每次抓到的正文一模一样,只有推荐位或时间戳在变,那就等于告诉引擎这里没什么新东西。

Last-Modified 与 ETag

正确返回这两个响应头,可以让蜘蛛用条件请求确认页面是否变化,未变时得到 304,节省的是双方的资源。需要注意的是,别让时间戳跟着请求变化,也别在内容没动时去改它。头部信息与实际内容不一致,属于噪声,不是信号。

Sitemap 中的 lastmod

它的作用是告诉蜘蛛哪些页面值得优先看一眼,因此应当与页面的真实修改时间对齐。如果全站文件的 lastmod 每天都在跳,或者在批量提交时统一刷成当天,这个字段对调度的影响会迅速衰减。

页面在站内的位置

从首页出发点几次能到、有没有栏目页指向它、有多少条内链、锚文本是否稳定,这些决定蜘蛛对页面重要性的判断。一个藏在三层目录之下、只有一条链接的页面,即便内容更新,也常常排在后面。想提高重访概率,先把它挪到更浅、更常被访问的路径上。

页面被实际使用的情况

有搜索需求、有正常点击的页面,通常会得到更积极的调度。这部分站点不能直接干预,但能做的是让页面具备被搜索的条件:清晰的标题、可索引的正文、稳定的 URL。如果页面参与不了搜索,重访的意义本身就有限。

整站健康度决定了所有人的速度

抓取资源是按站点整体分配的,个别页面再重要,也受整体表现拖累。下面这些情况会一起把节奏拖慢:

  • 频繁出现 5xx 或超时,蜘蛛会主动降低并发与频率;
  • 大量 404、410 或软 404 页面消耗抓取次数;
  • 筛选参数、排序参数生成大批近似 URL,让有效页面排不上队;
  • 重定向链过长,一次抓取要走三四跳;
  • 页面响应时间持续偏高,单次抓取成本上升。

换句话说,想让重要页面更快被再次抓取,先让整站少浪费几次抓取请求。

怎么自查重访节奏

  1. 从服务器日志中按 URL 统计访问间隔,得到每个页面的平均重访周期;
  2. 把时间轴与内容更新时间对照,看更新之后多久被再次访问;
  3. 挑出长期不回来的页面,检查它们的入链数量、层级与状态码;
  4. 确认这些页面的 Last-Modified、lastmod 与真实修改时间一致;
  5. 观察整体抓取量中,有多少落在重复参数页或错误页上。

几个容易走偏的做法

  • 为了催抓取而每天改 lastmod:与内容不符的时间戳只会降低可信度;
  • 反复提交没有变化的页面:占用的是本可以给新内容的额度;
  • 用大批低质页面去占位:分母变大,单个页面分到的次数自然变少;
  • 以为提交就等于被抓:提交只是进入候选,抓取仍由调度决定。
重访频率是调度结果,不是能单独优化到某个数值的指标。把内容更新、内链位置和服务器稳定性做扎实,节奏通常自己会回到合理区间。

如果要在有限精力里挑两件事先做,建议先处理站内可达性,再处理错误与超时。这两项改善之后,日志里的重访间隔往往比调整任何元信息都来得明显。