服務器日誌里出現大量带蜘蛛 UA 的請求,容易被直接当成“站点被搜尋蜘蛛抓取了”。但 UA 是可以随意伪造的,CDN 和反向代理還會改寫来源 IP。如果直接拿原始日誌做統計,采集器、监控探针和掃描流量都可能被算進抓取量里,後面基于抓取预算做的判断就會整体偏移。
為什么身份核驗要放在統計之前
抓取预算的分配、内鏈的調整、Sitemap 的提交效果评估,前提都是“某個 URL 是否真的被抓過”。這個前提一旦不成立,後續動作很可能對着错誤的對象發力:比如真實抓取量其實很低,却被日誌總量誤導,以為抓取充足,只是收錄慢。
三個可落地的核驗维度
UA 與請求行為的匹配度
搜尋蜘蛛的 UA 相對固定,但只看 UA 没有意义,更值得看的是行為是否一致:是否請求過 robots.txt、是否遵守 robots 中的限制、抓取間隔是否稳定、是否按需抓取 CSS 與 JS 资源。伪装的采集器往往只抓 HTML,且請求节奏紧凑、路径跳跃。
IP 與反向解析
把日誌中的 IP 做反向解析,再正向解析回原域名,比對前後是否一致,是判断来源是否可信的基础手段。需要注意的是,站点接入 CDN 後,日誌中记錄的多是节点回源 IP,而非蜘蛛本身,此时要先確認日誌字段记錄的是真實客戶端 IP 還是代理 IP。
請求头與訪問路径
Accept-Encoding、Referer、請求方法與路径分布都能作為辅助线索。真實蜘蛛通常會带完整的协商头,訪問路径也更贴近内鏈结构;而工具流量常出現固定路径、固定間隔、缺少协商头的特征。
常见的誤判来源
- CDN 或负载均衡改寫来源 IP,導致真實蜘蛛 IP 被替換成节点 IP。
- IPv4 與 IPv6 双栈並存,同一蜘蛛在日誌里呈現為两组不同地址。
- 日誌按小时聚合或采样存储,峰值抓取被抹平,看起来像低频。
- 爬虫伪装成蜘蛛 UA,混在真實抓取請求中。
- 站点监控探针規則化訪問,被誤認為蜘蛛回訪。
真實抓取量的估算口径
- 先按 IP 段與正反向解析结果過滤,剔除明顯不属于搜尋蜘蛛的来源。
- 按 URL 去重,並把 HTML 請求與静態资源請求分開統計。
- 按狀態碼分层,單獨看 2xx、3xx、4xx、5xx 各自的占比。
- 区分首次抓取與回訪,回訪密度比總量更能反映抓取节奏。
- 按目錄或頁面模板归類,观察抓取是否集中在少數栏目。
经過這几步之後得到的量,才适合用来判断抓取是否集中、深层入口是否長期未被訪問。
核驗之後的動作
如果核驗结果是真實抓取量遠低于日誌總量,優先排查的是服務器侧是否存在被采集器持續消耗的情况,而不是立刻改内鏈或加提交入口。反之,若真實抓取存在但集中在列表頁,說明抓取路径的分配可能偏向浅层,再去看目錄級抓取是否與内容價值匹配,思路會更清晰。
身份核驗是抓取分析的前置步骤。未经清洗的日誌可以用来观察趋势,但不适合直接作為抓取预算與收錄判断的依據。