網站收錄

抓取額度被低價值地址消耗:先用日誌分清主次再收口

蜘蛛来得很勤,收錄却没起色,很多时候是抓取被低價值地址消耗掉了。本文按日誌归類、狀態碼修复、參數處理、生成源限制的顺序,說明怎么分清必要的抓取和可以避免的抓取,並给出改動之後值得观察的几個指标。

網站收錄

抓取額度被低價值地址消耗:先用日誌分清主次再收口

很多站点在提收錄时,第一反應是“蜘蛛来得不够多”。但打開服務器日誌之後,常见的情况正好相反:蜘蛛来得很勤,只是把大部分時間花在了没有收錄價值的地址上,真正需要收錄的新頁面反而分不到几次抓取。

這篇文章讨论的不是怎么让蜘蛛變多,而是当抓取次數被低價值地址吃掉时,怎么用日誌分清主次,再按代價從小到大逐步收口。

先分清:抓取是被消耗,還是被浪費

“消耗”和“浪費”的差別在于這些地址本来有没有價值。分頁、篩選、詳情頁都需要抓取,這是正常的消耗;而带了一長串跟踪參數的副本、早就下线的舊地址、几個 URL 指向同一篇内容,這類抓取很难带来新的收錄,更接近浪費。

判断方法不复杂:把某段時間的抓取日誌按地址模式归類,看每一類各占多大比例。如果某几類既没有站内入口、也没有外鏈的地址占了三成以上,就值得處理。

日誌里最值得看的几類地址

  • 带參數的副本:跟踪參數、排序參數、會话 ID,同一篇内容被拆成几十個地址。
  • 重定向鏈和失效地址:A 跳到 B、B 再跳到 C;或者早已刪除但仍被反复請求的 404。
  • 重复的列表頁:列表按不同排序、不同视图各生成一套 URL,内容几乎一样。
  • 内部搜尋與篩選结果頁:數量可以無限增長,且大多没有獨立價值。
  • 孤岛頁面:站内没有任何連結指向,只在 sitemap 或歷史记錄里存在。

先看比例,再看绝對數量。某個類別的抓取次數是 200 還是 2000,本身說明不了問题;它在總抓取里占多少、這些地址有多少最终被收錄,才是判断依據。

處理顺序:從影响最小的一步開始

  1. 修狀態碼。已经刪除的内容不要繼續返回 200 或空模板,该 404 就 404,该 410 就 410。把 200 的空壳頁当作正常内容,是浪費抓取最常见的原因。
  2. 缩短跳轉鏈。多級 301 不但慢,還會让蜘蛛對目标地址的判断變模糊,统一成一跳到位。
  3. 處理參數副本。能在服務端忽略的參數就忽略,不能忽略的在頁面上标好規范地址,並确保内部連結只指向規范版本。
  4. 限制低價值生成源。内部搜尋结果、無限篩選這類頁面,優先從不生成開始,比事後屏蔽更干净。
  5. 最後才考虑 robots.txt。它是禁止抓取而不是禁止收錄,被挡住的地址如果還有外鏈,仍可能出現在索引里,只是内容不可控。
顺序上有個原則:先减少無用地址的产出,再谈屏蔽和收口。只在 robots.txt 上加几行,产出源不改,日誌里的比例不會有明顯變化。

哪些地址其實不用動

不是所有“看起来重复”的抓取都要處理。分頁、必要的篩選入口、有獨立價值的聚合頁,本身承担着發現深层連結的作用,贸然屏蔽可能让新頁面失去入口。判断标准可以简單一些:這個地址是否帮助用戶或蜘蛛找到別的内容?如果是,就保留。

收口之後看什么

改動上线後不要当天就下结论,抓取和索引都有延迟,观察周期通常按周計算。可以關注三個變化:

  • 目标頁面的抓取次數是否上升,而不只是總量變化;
  • 低價值地址的抓取占比是否下降;
  • 新發布頁面從被發現到被抓取的時間是否缩短。

如果低價值地址的比例降下来了,新頁面的抓取却没有增加,問题多半不在額度分配,而在入口和内鏈:新頁面可能离首頁太遠,或者根本没有稳定的站内連結指向它。

小结

抓取額度不是靠“催”出来的,而是靠梳理地址结构省出来的。先從日誌里分清哪些抓取是必要的、哪些是可以避免的,再按“修狀態碼、修跳轉、處理參數、限制生成源、最後才屏蔽”的顺序動手,比一上来就改 robots.txt 更稳,也更容易看出效果。