網站收錄

爬虫抓了却不收錄:從抓取记錄到索引结果该核對哪些信号

爬虫抓了却不收錄,是收錄問题里最常见的一類。這篇文章把抓取记錄和索引结果分開看,從狀態碼、响應大小、robots 指令、渲染方式到内鏈位置,给出可以照着走的核對顺序,並說明复查的合理节奏。

網站收錄

爬虫抓了却不收錄:從抓取记錄到索引结果该核對哪些信号

很多人看收錄,只看一個數字:site 查询或者後台的索引量。但爬虫每天来過多少次、抓了哪些 URL,和最终有多少頁面進了索引,是两個环节。抓取只是把頁面取回去,收錄是索引系統判断這個頁面值不值得留下。中間隔着一层判断,頁面可能被抓了很多次,依然不進索引。

先把「抓了」這件事確認清楚

日誌里能看到爬虫訪問,不代表它拿到了完整内容。核對时至少看四個字段:

  • 狀態碼:200 是正常取回,301/302 是跳轉,403/503 是拒绝或不可用。返回 503 的次數多了,抓取频次會往下掉。
  • 响應大小:如果某個模板頁永遠只有几百字节,很可能只拿回了框架,正文是 JS 渲染的。
  • User-Agent:区分是搜尋爬虫還是其他工具,別把第三方抓取当成搜尋引擎的訪問。
  • 時間分布:同一 URL 一天被抓好几次却始终不收錄,說明問题不在發現,而在頁面本身。

抓到了不收錄,常见就這几類原因

1. 頁面本身没有可索引的内容

空列表頁、無结果的篩選頁、内容几乎全靠图片或视频承载的頁面,索引系統會倾向于不留。這類頁面不是抓不到,是留下之後對搜尋结果没有帮助。

2. 重复或高度相似

同一批商品的不同排序參數、同一篇文章的打印版,正文几乎一样。系統會挑一個留下,其余的当重复處理。這類問题先從 URL 規范和 canonical 入手,而不是反复提交。

3. 指令把路堵住了

meta robots 里的 noindex、响應头里的 X-Robots-Tag、canonical 指到別的 URL,任何一個都會让頁面即使被抓也不進索引。检查时看最终渲染後的 DOM,不要只看源代碼。

4. 内容被渲染挡住

如果正文依赖客戶端渲染,爬虫拿到的 HTML 里没有正文,索引阶段就只能看到空壳。把關键内容放在服務端輸出,或者确保渲染後的内容能被正确获取。

一份可以照着走的核對顺序

  1. 從日誌里筛出「抓取次數較多但未收錄」的 URL 清單。
  2. 用抓取工具模拟訪問,看返回的 HTML 里正文是否存在。
  3. 看 robots 指令、canonical、狀態碼三項是否與预期一致。
  4. 和同站已收錄的相似頁面做對比,找差异:内鏈數量、正文長度、更新時間、是否有獨立标题。
  5. 如果確認是低價值頁型,直接决定挡住或保留,不要让它長期占着抓取名額。

別忽略入口和信号

頁面能被抓到,說明至少有一條路径。但只有一條弱内鏈的頁面,索引系統拿到的推荐信号很弱。同類頁面里,能從首頁两三次点击到達、有稳定内鏈、有外部引用的,被留下的概率明顯更高。這不是技巧,是頁面在站内位置的直接体現。

抓取解决的是「看得见」,收錄解决的是「值得留」。前者可以靠提交和内鏈推動,後者只能靠頁面本身站住。

复查的节奏

處理完之後不要每天看。按周记錄一次清單變化,看的是趋势:抓而未收錄的 URL 數量是否在减少,同類頁面里被留下的是哪一批。如果一批頁面反复抓取、反复不收錄,通常說明頁型本身有問题,繼續增加提交量意义不大。

把抓取记錄和索引结果放在同一張表里對照,比只看收錄總量有用得多。數量只是结果,路径才告诉你下一步该動哪里。