很多人把抓取和收錄当成同一件事:日誌里看到蜘蛛来過,就以為頁面已经進入索引。實际上,抓取只是把頁面内容取回本地,离“可被搜尋到”還隔着若干检查点。了解這條流水线,排查收錄問题时就不會只盯着提交入口。
抓取成功只是拿到了原材料
爬虫下载一個 URL 的 HTML 或资源,只說明它完成了訪問。這個動作可能只是為了發現新連結,也可能只是例行复查。抓取回来的内容會先進入待處理队列,是否繼續走向索引,要由後面的环节决定。
因此,日誌里出現 200 狀態碼,並不等于頁面一定被收錄。反過来,某個頁面没被抓取,也不代表它永遠不會出現在索引里,索引系統可能通過其他来源获得了它的信息。
解析與提取:索引條目的零件從哪里来
頁面進入處理流程後,系統會解析 HTML,提取标题、主正文、發布時間、作者、語言、連結和结构化資料等。對于依赖 JavaScript 渲染的内容,還可能需要二次渲染或從資料接口获取。
常见提取項
- 标题與描述:用于生成索引條目的展示信息。
- 主内容:判断頁面主题和内容厚度的主要依據。
- 連結:繼續發現站内其他 URL。
- 規范化信号:canonical、hreflang、重定向目标等。
如果這些信息提取失敗或互相矛盾,頁面即使被抓取,也可能被判定為“不值得單獨保留”。
規范化與去重:多個 URL 可能指向同一内容
同一個頁面常常有多個訪問地址:带參數、带大小寫差异、带尾斜杠、经過跳轉鏈等。索引系統會尝试把它們归並到代表 URL 上,避免同一内容占用多個索引條目。
去重不只看 URL,還會比較正文、标题、模板和連結结构。相似度高的頁面可能被聚類,只有其中一個版本被保留,其余版本進入“已排除”或“重复”狀態。
质量與價值判断:不是所有頁面都值得長期保留
索引资源有限,系統會评估頁面是否值得保留一份可检索副本。内容厚度、原创程度、时效性、站点整体质量、用戶互動信号等都會影响判断。薄内容頁、采集拼凑頁、無獨立價值的聚合頁,容易被過滤或降權。
收錄是索引系統對頁面“是否值得保留一份可检索副本”的判断结果,而不是對抓取行為的奖励。
索引寫入與可检索:收錄後的狀態也會變化
通過前面检查的頁面會被寫入索引,進入倒排索引和分片存储,之後才能响應搜尋查询。寫入不是终点:重新抓取、内容更新、质量下降、站点结构調整,都可能让索引條目被替換或移除。
這也是為什么“曾经收錄過”不能作為長期保證。頁面在索引里的版本,可能落後于线上最新版本,直到下一次抓取和處理完成。
常见卡点自查
- 抓取正常但未收錄:检查内容是否與其他頁面高度重复,或頁面是否缺少獨立價值。
- 收錄後搜不到:確認标题和摘要是否被正确提取,查询词是否與頁面主题匹配。
- 改版後舊内容仍在:核對重定向鏈和 canonical 是否一致,舊 URL 是否仍可訪問。
- 索引數量波動:区分是新增頁面被收錄,還是重复頁面被清理。
运营侧可以做什么
- 保持 URL 稳定,减少無意义的參數和大小寫變体。
- 為重要頁面提供清晰的站内入口和内鏈,帮助發現。
- 用 sitemap 和日誌观察抓取與索引狀態,但不要把提交当成收錄開關。
- 定期清理空列表頁、搜尋结果頁和低價值聚合頁。
排查收錄問题时,可以按“抓取—解析—去重—质量—索引”的顺序逐段检查。每一段都有獨立的通過條件,任何一段卡住,頁面都可能停留在“已發現”或“已抓取”狀態,而不會進入可搜尋索引。