在索引覆盖报告里,“已發現,尚未编入索引”和“已抓取,尚未编入索引”经常被当成同一件事,但它們卡住的位置完全不同。前者是 URL 進了待抓取队列,蜘蛛還没上门;後者是蜘蛛已经来過、把内容讀走了,只是搜尋引擎最终没有把它放進索引。搞混這两者,自查方向會完全跑偏:一個该去修抓取入口和内鏈,另一個该去看内容本身和頁面的規范标记。
三個狀態分別意味着什么
- 已發現,尚未编入索引:搜尋引擎知道這個 URL 存在,但還没抓。多见于内鏈稀少的頁面、刚提交的站点地图,或站点抓取配額有限的时候。
- 已抓取,尚未编入索引:内容已经拿到,問题出在抓取之後的判断环节,和蜘蛛来没来無關。
- 曾经在索引里,後来消失:頁面本身没改,也可能是站点整体质量、規范标记或内容重复度變化引發的重新评估。
抓取之後還會發生什么
抓取只是把 HTML 拉回来,後面的流程大致包括:解析正文、判断頁面類型是正文頁還是列表頁或功能頁、與已有内容做去重比對、评估内容深度與时效性,最後决定是否單獨入库。
其中任何一步得出“這個 URL 不值得單獨占一個索引位置”的结论,頁面就會停在“已抓取”狀態。也就是说,抓到不等于收錄,收錄是抓取之後的又一次篩選。
渲染與内容可讀性
如果正文依赖 JavaScript 渲染,蜘蛛抓到的可能只是空壳 HTML。此时报告里的“已抓取”是真的,但抓到的内容不足以让頁面通過後續判断。检查方法很直接:看抓取时返回的 HTML 源碼里有没有正文,而不是只看浏览器里顯示成什么样。
重复與規范标记
頁面上有 canonical 指向另一個 URL,或者與站内其它頁面高度相似,都可能让搜尋引擎只保留一份索引。带參數的分頁、排序、篩選地址尤其容易出現這種情况,同一批頁面中往往只有參數變体停在“已抓取”。
按這個顺序自查
- 確認頁面没有被 noindex 标记,也没有被 robots.txt 拦住 JS、CSS、图片等關键资源。
- 看 HTML 源碼里是否有可讀正文,而不是只有框架和占位符。
- 检查 canonical、hreflang 等規范标记,確認它們指向的确實是你想收錄的那個地址。
- 對比站内相似頁面,判断這份内容是否真有獨立存在的價值。
- 確認服務器返回稳定,没有把蜘蛛的請求導向驗證碼、地区封鎖或登入頁。
- 翻一段時間内的抓取日誌,看蜘蛛是否反复抓取却不收錄,這通常指向内容评估而非技術故障。
几個容易誤判的地方
- 报告有滞後,改完立刻查看往往看不到變化。
- 數字是按抽样估算的,小幅波動不代表整体收錄情况變了。
- 用 site: 查询来判断收錄並不可靠,结果只是近似。
- 同一批頁面里只有少數停在“已抓取”,多半是個体差异,不必全站推倒重来。
抓取是搜尋引擎愿意花成本来讀,收錄是它認為這份内容值得放進结果。前者靠入口和可達性,後者靠内容本身。把两件事分開看,自查才不會白費力气。