在服務器日誌里看到搜尋引擎蜘蛛,很多人的第一反應是“這個頁面收錄了”。但抓取和收錄是两個獨立的阶段:蜘蛛把頁面下载回去,只完成了第一步;能不能進索引,還要看後面的解析、渲染、去重和质量判断。
抓取:把内容拿回去
抓取的目标只有一個——拿到頁面的内容。决定能不能被抓的主要是這几件事:
- 是否被發現:入口来自内鏈、站点地图、外部連結或提交接口。没有入口的 URL,蜘蛛很难主動知道。
- 是否允许抓取:robots.txt、狀態碼、登入墙、地区限制都會影响。
- 抓取资源是否够用:站点响應慢、错誤頁多,會让抓取频次被压缩,新頁面排队更久。
抓取成功只代表蜘蛛拿到了 HTML,甚至可能只拿到了一個空壳。
收錄:把内容處理成可检索的索引項
抓回来的内容要经過解析、渲染、提取正文、判断重复、评估质量,再决定是否寫入索引。這一层的判断结果不在服務器日誌里,而在索引报告和 URL 检查工具里。
常见的卡点有两類:一類是頁面自身的問题,比如正文太薄、與站内其他頁面高度重复、主要内容依赖脚本渲染而渲染失敗;另一類是站点整体的問题,比如同一套模板批量生成大量近似頁面,触發了對低價值内容的整体過滤。
判断口诀:日誌里有没有蜘蛛,看的是抓取;索引报告里有没有這個 URL,看的是收錄。两者不能互相替代。
几個容易混淆的現象
抓取次數很多,仍然没收錄
抓取频次反映的是蜘蛛對站点的兴趣和抓取预算的分配,和頁面是否值得入库没有必然關系。反复抓取同一個 URL,有时恰恰說明它還在被重新评估,而不是已经通過。
“已抓取,尚未编入索引”
這是最直接的信号:内容已经拿到,但没有通過後面的环节。這时優先检查正文是否完整可讀、是否存在更合适的規范版本、頁面和站内其他頁面是否构成實质重复。
site 指令查不到
site 的结果並不精确,只能作為粗略參考,不能当作收錄與否的證據。判断單個 URL 的狀態,用官方的 URL 检查工具更可靠。
按顺序排查
- 確認這個 URL 有真實入口:至少在站点地图或站内導航里能点到。
- 確認返回 200,頁面本身没有 noindex,robots.txt 没有誤拦截。
- 確認禁用脚本後仍能看到主体内容。
- 確認 canonical 指向自己,參數、大小寫等變体没有互相打架。
- 確認頁面與站内同類頁面不是同一套模板的简單複製,有獨立信息。
- 前面都正常,再提交並观察,给索引更新留出時間。
把抓取和收錄分開看,排查會清晰很多:日誌回答“蜘蛛来没来”,索引报告回答“内容進没進”。前者是過程指标,後者才是结果。持續维護清晰的入口结构和扎實的内容质量,比盯着一时的抓取频次更有意义。