很多站点把收錄問题归结為“提交得不够多”,但實际观察下来,爬虫發現新頁面主要靠两條路:一條是 sitemap 之類的主動提交,另一條是顺着頁面上的連結爬過去。前者解决“知不知道這個 URL 存在”,後者解决“愿不愿意走過去、多久走一次”。在連結這條路上,决定效率的一個關键指标就是点击深度,也就是從首頁出發点几下能到這個頁面。
爬虫不是均匀地走完整個站点
抓取配額有限,爬虫通常會優先走层級浅、被連結多、更新频繁的区域。首頁和一級栏目拿到的抓取次數,往往比一個藏在篩選结果第五頁的詳情頁高出很多。這不代表深层頁面不會被收錄,而是说它們被發現的周期更長,中間任何一环断了,比如某次改版删掉了一個入口,頁面就可能長期停在“已發現未抓取”的狀態。
所以点击深度不是审美問题,它直接影响爬虫走過去的路径長不長、分支多不多。
点击深度怎么算,先画一張简图
不需要专业工具,從首頁開始往下画三层:首頁指向哪些主栏目,主栏目指向哪些列表或专题,列表再指向哪些内容頁。画完把每個内容頁的层數标上,通常會出現明顯的断层——一部分頁面三层以内就能到,另一部分要五六层,甚至只能靠搜尋框或站内搜尋才能找到。
三種入口在實际抓取里的差別
- 導航與栏目入口:深度最浅,抓取最稳定,缺点是位置有限,能挂的頁面不多。
- 正文内鏈與相關推荐:數量大、可灵活安排,是给深层頁面补入口的主要手段,但要注意推荐是静態輸出還是接口异步加载。
- 面包屑與标簽聚合:能形成額外的横向路径,但如果标簽頁本身质量低,反而會分散抓取。
孤岛頁面通常從哪来
- 活動頁、专题頁上线时只發了外鏈或投放,站内没有回鏈,活動結束後彻底断联。
- 列表分頁過深,老内容被新内容挤到几十頁之後,爬虫很少翻到那里。
- 改版时栏目结构重做,舊頁面的入口被删掉,URL 還在但没人指向它。
- 相關推荐位由 JS 渲染,HTML 源碼里看不到連結,爬虫讀不到這條路径。
這几類問题不需要一次性全改,先從流量和價值最高的頁面開始补入口即可。
内鏈調整的優先顺序
- 先修孤岛:把完全没有任何站内入口的頁面接回某個列表或推荐模块。
- 再压深度:把需要五层以上才能到達的重点頁面,通過专题頁或聚合頁提到三层以内。
- 再补横向:给同一主题下的頁面加互相連結,让爬虫在一次抓取里能连带走一批。
- 最後控制數量:單頁導出連結不宜過多,避免把抓取分散到大量低價值頁面上。
自查时值得看的几個点
- 關掉 JS 或查看網頁源碼,確認内鏈是否真實存在于 HTML 里。
- 随机抽十個内容頁,看從首頁最少要几跳才能到。
- 检查新上线頁面是否同时具备 sitemap 和站内入口,两條路最好都有。
- 看日誌里深层頁面是否有抓取记錄,長期没有记錄基本可以判定路径不通。
内鏈的第一作用是让用戶和爬虫都能找到路,收錄层面的收益更像是顺带的结果。先把结构理顺,再谈提交和配額,顺序會顺很多。
需要提醒的是,点击深度只是影响發現效率的一個變量,頁面本身是否有獨立價值、内容是否重复、响應是否及时,同样會决定它最终能不能進索引。把内鏈结构当成一項長期的站点维護工作,而不是一次性的修补,收錄表現會更稳定。