在蜘蛛池和入口頁的日常运营里,最容易混淆的一件事就是:被抓取不等于會被收錄。日誌里看到搜尋蜘蛛频繁来訪,目标 URL 也返回 200,但索引里始终查不到,這種情况下先別急着繼續加入口頁,應该先分清抓取和索引是两套流程。
抓取和收錄分別發生了什么
抓取是爬虫把頁面下载回去,收錄是搜尋引擎在下载之後做的一系列處理:解析正文、判断重复、评估质量、决定是否放進索引、放進哪個索引。抓取只說明一件事——這個 URL 被發現了,而且服務器愿意把内容交出来,它不是收錄的承诺。
所以會出現两種常见現象:入口頁加了很多,抓取量上去了,收錄却没有變化;或者某個 URL 反复被抓,過一段時間仍然不在索引里。這两種情况的原因通常不在“發現”环节。
抓取正常却不收錄的常见原因
- 内容與站内其他頁面、或與互联網上已有頁面高度重复,搜尋引擎認為没有新增價值。
- 頁面主体内容太少,HTML 里只有導航、模板、广告位,真正的内容需要交互或登入才能看到。
- 頁面本身是跳轉頁、中間頁,没有獨立内容,只承担轉發的角色。
- HTML 头部或响應头里寫了 noindex,或者 X-Robots-Tag 限制了索引。
- canonical 指向了另一個 URL,搜尋引擎把索引和信号都归到了那個地址上。
- 狀態碼不稳定,間歇性返回 5xx、软 404,或者對爬虫返回了與用戶不同的内容。
- 站点整体被信任的程度不够,新域名、新目錄通常需要更長的观察期。
建议的排查顺序
- 先從抓取日誌確認:返回碼是不是稳定 200,返回字节數是否和真實頁面一致,有没有被 WAF 或 CDN 拦成驗證頁。
- 查看 HTML 源碼里的 meta robots、canonical,以及 HTTP 响應头中的 X-Robots-Tag。
- 關閉 JavaScript 或使用纯文本抓取工具,看主体内容是否存在于初始 HTML 中。
- 把目标 URL 與站内相似頁面做對比,检查标题、正文、结构是否几乎一样。
- 換一個 UA 訪問同一地址,確認服務端没有對爬虫做差异化返回。
- 確認以上检查都通過後,再观察一段時間,而不是几小时就下结论。
入口頁在這件事里能做什么、不能做什么
入口頁解决的是發現問题:让搜尋蜘蛛知道有這么一批 URL 存在。它不解决收錄問题。入口頁數量翻倍,通常只是让同一批 URL 被更频繁地下载,並不會提高索引意愿。
如果目标 URL 長期不被收錄,繼續堆入口頁往往是無效劳動,甚至可能因為大量低质量中轉頁面,让整站的抓取预算被消耗在無價值的地址上。
抓取是通道,收錄是评估。用抓取量去判断收錄效果,方向一開始就错了。
更實际的做法
- 保證目标 URL 返回稳定的 200,正文在初始 HTML 里就能讀到。
- 一個内容只保留一個可訪問地址,其余版本用 301 归並,避免自我重复。
- 用 sitemap 提交,並保持 lastmod 的真實性,不要每次全量刷新時間。
- 關注日誌里的狀態碼分布,而不是只數搜尋蜘蛛的来訪次數。
- 给新頁面留出足够的观察周期,再判断是否需要調整策略。
把抓取和收錄分開看,排查會清晰很多:抓取異常先查入口頁、robots 和服務器;抓取正常但没收錄,則要把注意力放回頁面内容、重复度和站点本身的信任度上。