做站点运营的人常遇到一種情况:日誌里蜘蛛来訪次數明顯增加,抓取的 URL 數量也不少,但過一段時間去查索引,收錄數量几乎没動。這时候容易得出“蜘蛛不干活”的结论,其實抓取和收錄本来就是两件事,中間還隔着几道判断。
抓取、收錄、展現是三件事
抓取是蜘蛛把 URL 取回来看一眼,只說明它找到了這個地址,並且愿意花一次請求。收錄是搜尋引擎把這個頁面放進索引,可以參與检索。展現則是用戶搜尋时它被拿出来。三者是一层层過滤的關系,抓取量增加只代表第一层變宽,後面两层依然可能被卡住。
所以看到抓取上涨先別急着高兴,要接着看两件事:蜘蛛抓的是哪些 URL,以及這些 URL 抓完之後留下了什么。
抓取多但收錄少,常见卡在四個地方
一、被抓的頁面不是可獨立收錄的單元
列表頁、篩選頁、分頁、站内搜尋结果頁、各種參數拼接出来的地址,蜘蛛都會抓。它們的存在意义是導流和串联内容,不是回答某個具体問题。這類 URL 抓得再多,也很难轉化成有效收錄。
如果日誌里抓取量的大头都是這類地址,那不是收錄出了問题,而是抓取入口的结构問题。先收敛這類 URL 的入口,把蜘蛛的注意力往正文頁上引。
二、内容重复,主版本早就定了
同一個主题在站内被拆成多個 URL,正文差別很小,或者干脆是同一篇内容換了标题重新發。搜尋引擎會挑一個版本作為主版本,其余的在索引里被合並或過滤。這时候你看到的“没收錄”,其實是被收進了另一個地址名下。
判断方法很简單:把疑似重复的几個 URL 里的關键句拿去搜,看看出現的是哪一條。如果出現的一直是同一個地址,說明主版本已经确定,其余頁面再抓也只是陪跑。
三、抓到了,但拿到的是空壳
内容靠 JS 异步加载的頁面,蜘蛛抓取时如果拿不到渲染後的结果,返回的可能是一個只有框架、没有正文的 HTML。狀態碼是 200,抓取记錄也正常,但這個頁面没有可用的内容放進索引。
同样的現象也可能来自模板结构:正文被压在一個很小的区域里,周邊塞满推荐位和導航,蜘蛛很难判断哪一段才是主体。
四、頁面质量與站点整体水平
内容量、信息完整度、是否有明确主题、是否在持續维護,這些都會影响收錄判断。一個站点如果大部分頁面都是短内容、聚合内容或轉载内容,新頁面也很难被單獨放行。這不是單頁的問题,而是整站水平的外溢。
用日誌把問题定位到具体一层
與其凭感觉猜,不如按顺序看几個点:
- 抓取日誌里排名靠前的 URL,是正文頁還是功能頁,比例大致是多少。
- 被大量抓取的 URL 返回的狀態碼分布,200、301、404、5xx 各占多少。
- 随机抽几條被抓的正文頁,手動訪問或查看抓取快照,看正文是否完整。
- 抽查這些頁面的标题和描述是否高度相似,是否存在模板化批量生成。
- 對比抓取量大的目錄和收錄量大的目錄,看两者是否错位。
這几步做完,大致能分清是“蜘蛛没找對頁面”“頁面抓不到内容”,還是“内容本身不被認可”。
想让抓取更有效地轉成收錄
- 给正文頁更直接的入口。用清晰的栏目和内鏈把蜘蛛引到内容頁,而不是让它在一個個列表里绕圈。
- 把不该被索引的 URL 明确挡掉。篩選、排序、跟踪參數這類地址用規范手段收敛,別让它們占掉大量抓取。
- 保證首屏 HTML 里就有正文。需要渲染的内容尽量把關键部分先輸出,不要全压在客戶端。
- 减少站内近似内容。同一主题尽量放在一個 URL 上维護,更新通常比複製更容易被認可。
- 观察周期別太短。從抓取到收錄本来就有滞後,按周為單位观察比按天更靠谱。
抓取量是過程指标,收錄量才是结果指标。看到抓取上涨,先問一句:蜘蛛抓到的這些頁面里,有哪一個值得單獨出現在搜尋结果里。
把這两者分開看待,排查思路會清楚很多:抓取不足多半是入口和结构的問题,收錄不足則更可能是内容和頁面本身的問题。