抓取和收錄常被当成一回事,但在搜尋系統里它們是两個阶段。抓取(crawl)只是蜘蛛把頁面的 HTML 取回服務器;收錄(index)是這個 URL 進入索引库,之後才有可能被检索和展示。服務器日誌里全是 200,並不代表頁面就在索引里。
抓取完成之後,還可能停在几道门口
從取回到進索引,中間通常還有几层判断。任何一层没過,頁面就會停在门外,而且日誌上看起来一切正常。
第一道:能不能抓到
- robots.txt 里屏蔽了對應目錄或整站;
- 服務器返回 403、503、超时或频繁重置连接;
- 頁面内容依赖登入、表單提交或本地存储才能出現。
這一层的問题會在抓取日誌里留下痕迹:訪問次數少、狀態碼異常、爬取深度浅。
第二道:頁面自己说不想被收錄
- HTML 里的 noindex meta 标簽;
- HTTP 响應头里的 noindex;
- 被 canonical 指向了另一個頁面,自己成了备用版本。
這些是頁面主動的表態,抓取照常發生,但收錄會被跳過。它們不寫在 robots.txt 里,所以只查 robots 是查不出来的。
第三道:和已有内容太像
如果同一篇内容在站内有多個版本,或者被大量轉载、聚合,系統需要在其中挑一個代表。挑剩下的頁面,即使被抓取過,也可能只作為备用版本存在,不會單獨获得索引位置。
第四道:值不值得單獨占一個位置
模板撑起来、正文几乎没有信息量的頁面,抓取通常顺利,收錄却長期停住。這不是技術問题,而是頁面本身没提供可被检索的獨立内容。
索引狀態报告里的提示在说什么
- 已發現,尚未抓取:URL 已经知道,但還没轮到抓取,常见于新站或内鏈入口太少的頁面。
- 已抓取,尚未编入索引:抓到了,但没有收錄。這一档最需要看内容质量、重复情况和頁面價值。
- 已编入索引:進入了索引库,但具体有没有排名、有没有搜尋流量,是另一個問题。
- 重复網頁,系統選擇的規范網頁與用戶指定的不同:頁面的規范信号和系統判断不一致,需要检查站内是否有更完整的同類頁面。
- 已排除,被 noindex 标记:頁面自己拦掉了收錄。
- 备用網頁(有規范标簽):canonical 生效了,目前 URL 让位给另一個地址。
把提示對應到具体那一道门,排查方向就清楚了:是没抓到、是不让收、還是抓到了但被判定為不值得收。
可以按這個顺序排查
- 先在抓取日誌或站長平台的抓取統計里,確認蜘蛛真的来過這個地址,且返回的是正常狀態碼。
- 查看頁面源代碼和响應头,確認没有 noindex。
- 检查 canonical 指向哪里,是否指向了別的地址。
- 和站内同類頁面比對,看正文是否存在大段重复。
- 判断頁面有没有獨立信息量:是為了填模板生成的,還是真的回答了一個具体問题。
- 確認這個地址有内鏈或站点地图入口,而不是只能靠外鏈才能被找到。
抓取正常、收錄迟迟不来,常见的原因
- 站点整体權重和信任度還在积累期,新頁面被收錄的节奏偏慢;
- 同類内容在站内已经有很多,新增的差异化不足;
- 頁面入口太深,只有深层連結,缺少從首頁或栏目頁過来的路径;
- 頁面正文需要額外渲染才能出現,初次抓取时拿到的内容很單薄。
一句话概括:抓取解决的是“能不能看到”,收錄解决的是“值不值得存下来”。两件事分開看,排查时才不會在错誤的方向上反复調整。
遇到頁面没有收錄时,先別急着改标题或堆關鍵詞。按上面的顺序確認它卡在哪一段:是没被抓到,是被頁面自己拦住,還是抓到了但没通過價值判断。定位准确之後,改動才會有针對性。