先想清楚:日誌能回答什么問题
入口頁有没有被抓、蜘蛛什么时候来的、来了几次、請求返回了什么狀態碼、有没有顺着入口頁去請求後面的目标 URL——這些問题,服務器日誌基本都能回答。但“目标頁有没有被收錄”“排名有没有變化”這類問题,日誌回答不了。
先把邊界划清楚,再看資料,能省掉很多誤判。
第一步:在日誌里把搜尋蜘蛛認出来
看 User-Agent
常见蜘蛛的 UA 里會带 Googlebot、bingbot、Baiduspider 這類字样,直接按關键字過滤就能得到一批候選請求。但 UA 是可以随意伪造的,只看 UA,很容易把采集脚本、监控探测、第三方檢測服務当成蜘蛛。
用 IP 和反向解析交叉驗證
主流搜尋引擎一般會公布自己的 IP 段,反向 DNS 解析通常也能解析回官方域名。比較稳的做法是:先按 UA 筛出候選,再把 IP 和官方 IP 段、反解结果對一遍,两邊都對得上的才当成真蜘蛛;對不上的,基本可以按伪装爬虫處理。
要注意,不是所有搜尋引擎都提供完整的反解信息,小引擎的資料可能對不齐。判不准的那部分先單獨放一栏,別急着当成假的清掉。
日誌里值得關注的几個点
- 入口頁被請求的次數和频率:一天里是偶尔来一次,還是按比較固定的間隔回訪。
- 入口頁請求返回的狀態碼:200、304、301、403、404 各占多少。
- 同一個蜘蛛 IP 有没有請求過入口頁里列出的目标 URL,這是判断連結是否被跟進的直接线索。
- 首次出現的時間:新加的連結大致隔多久被請求第一次。
- 抓取分布:是集中在少數几個入口頁,還是比較均匀地铺開。
- 5xx 和超时的比例:服務端如果经常出错,抓取节奏會被拖慢。
容易讀错的地方
- 日誌里有记錄,不等于頁面已经進索引,抓取和收錄是两件事。
- 入口頁前面挂了 CDN 时,源站日誌可能只看到回源請求,命中缓存的抓取压根不會出現在源站日誌里,這種情况要去看 CDN 侧的日誌。
- 日誌做了采样,或者只保留了几天,样本不全,算出来的比例很容易偏。
- 一次 200 不代表蜘蛛下次還来,一次 304 也不代表它没看到内容。
- 一些工具站和 SEO 檢測服務也會大量抓取,混在日誌里很像蜘蛛,需要單獨区分。
一個够用的分析流程
- 導出近 7 到 30 天的訪問日誌,字段至少保留時間、IP、UA、請求 URL、狀態碼、响應大小、referer。
- 按 UA 做粗筛,得到“疑似蜘蛛”的集合。
- 用 IP 段和反向解析把伪装的部分剔掉。
- 按天統計入口頁請求量、目标 URL 請求量、狀態碼分布。
- 把新加的連結按上线時間排開,看蜘蛛第一次請求它們的時間差。
- 固定周期看趋势,比盯着某一天的數字更有參考價值。
日誌之外還要配合什么
日誌记錄的是“来過”,站長後台的資料记錄的是“處理结果”。两類資料放在一起看,才能区分是蜘蛛没来、来了没抓、抓了没收錄,還是收錄了没有表現。入口頁連結的增删、robots 的調整、服務器故障這些動作,最好也在日誌旁邊记一筆時間点,方便回头對照。
提醒:日誌分析只能說明抓取行為,不能保證收錄或排名。把它当排查工具用,別当效果承诺。