在蜘蛛池和站点运营里,“已發現未抓取”是日誌和站長工具中最常见的狀態之一。它說明搜尋蜘蛛已经通過某個入口頁看到了連結,但還没有真正去請求目标 URL。很多人第一反應是入口頁失效,實际排查时,入口頁和目标頁都要看,只是检查顺序不同。
先分清“已發現”和“已抓取”是两個阶段
搜尋蜘蛛處理一條連結,大致分两步:發現,也就是在入口頁解析到連結;抓取,也就是真正發出請求。停留在前一步,說明連結被记錄但没有進入抓取队列的执行环节。原因既可能是入口頁给出的信号不够,也可能是目标頁本身让調度系統不愿意優先安排。
入口頁侧要检查的問题
- 連結是否真的寫在 HTML 里。用 JavaScript 渲染、iframe 或 meta refresh 生成的連結,發現速度通常更慢,甚至只被当作待確認項。
- 連結是否被 nofollow、robots.txt 或頁面級 noindex 削弱。入口頁整体 noindex 时,顺鏈發現仍可能發生,但優先級會下降。
- 入口頁响應時間是否過長。首字节時間经常超過一两秒,蜘蛛抓完入口頁後往往不會马上繼續跟随連結。
- 同一個入口頁的連結數量是否波動太大。一次從几十個變成上千個,容易触發抓取节流。
- 入口頁是否長期返回高度重复的内容。模板重复度高时,蜘蛛對頁面上連結的信任度會降低。
目标頁侧要检查的問题
- 目标 URL 是否被 robots.txt 屏蔽,或者返回 5xx、長時間不响應。
- 目标頁是否存在大量重复内容,或者 canonical 指向了別的地址。
- 目标頁是否有登入墙、驗證碼或反爬拦截,導致蜘蛛請求拿不到正常頁面。
- 目标 URL 在站内是否還有其他入口。如果只有蜘蛛池入口頁這一條路径,被安排抓取的顺位會更靠後。
- 目标頁是否属于新域名或新目錄,新站点本身的抓取配額就比較有限。
抓取预算和優先級的影响
搜尋蜘蛛每天的抓取量有限,會按頁面质量和歷史表現来分配。入口頁质量一般、目标頁又缺少其他信号时,連結容易長期躺在队列里。真正能改善的方向,是让入口頁稳定可抓、目标頁正常可訪問,並让目标 URL 同时出現在 sitemap、站内導航等多個位置,而不是只依赖蜘蛛池一條路径。
建议的排查顺序
- 用服務器日誌確認蜘蛛是否真的請求過入口頁,以及返回的狀態碼是什么。
- 查看入口頁 HTML 源碼,確認目标 URL 能直接看到,而不是靠脚本後期拼接。
- 检查目标 URL 是否被 robots.txt、登入墙或防火墙挡住。
- 對比 sitemap 提交情况和站内連結,看目标 URL 是否有別的發現路径。
- 观察一到两周,再看“已發現未抓取”的數量是否减少,避免频繁改動入口頁结构。
“已發現未抓取”不是错誤狀態,而是排队狀態。它更多反映優先級和抓取预算,短時間内没来抓並不等于連結一定有問题。
小结
遇到這個狀態,先看入口頁能不能被正常抓取、連結是不是源碼可见,再看目标頁能不能正常訪問。两邊都排查完,剩下的往往是抓取预算和時間問题。不要為了催抓而反复改動入口頁,频繁變動反而會让蜘蛛重新评估整個入口的可信度,短期内更难看到效果。