很多人搭好蜘蛛池入口页之后,第一反应是去搜索控制台看收录。但收录慢、收录少的原因,往往在更前面一步:搜索蜘蛛到底有没有来过。日志是唯一能直接回答这个问题的材料,而且它不需要等任何后台数据更新。
先分清“被抓过”和“被索引”
抓取是搜索蜘蛛下载了你的 URL,索引是搜索引擎决定把它放进结果页。日志只能告诉你前者。入口页被频繁抓取但目标 URL 一直不收录,说明问题不在 URL 发现这一层,而在内容质量、重复度、canonical、站点权重等更后面的环节。先把日志读清楚,能避免在错误的方向上反复改入口页。
日志里值得看的字段
- 请求时间与频率:同一个蜘蛛多次访问入口页的间隔,能看出抓取节奏是稳定还是突然中断。
- 状态码:200、301、404、403、429、503 含义各不相同,5xx 和 429 会直接压低后续抓取量。
- User-Agent:只能作为初筛,UA 很容易被伪造。
- 来源 IP:配合反向 DNS 解析,比 UA 可靠得多。
- 请求路径:区分入口页、中转页、目标 URL,看蜘蛛走没走完你设计的链路。
- 响应体大小:返回 200 但体积只有几百字节,通常是错误页或空壳页。
怎么判断是不是真蜘蛛
先做反向 DNS:用 IP 反解出域名,再把域名正解回 IP,两次结果对得上才算可信。主流搜索引擎都提供自己的 IP 段列表,可以拿来比对。反过来,如果 UA 写着搜索蜘蛛但 IP 来自普通机房或 CDN,大概率是采集器或扫描工具,这类访问不该影响你对抓取情况的判断。
三类常见的日志形态
只有入口页,目标 URL 一条都没有
说明蜘蛛拿到了入口页,但没有顺着链接继续走。常见原因是链接靠 JS 渲染、被 nofollow 标记、写在 iframe 里,或者链接数量太多导致蜘蛛只挑了其中一部分。先检查入口页 HTML 源码里能不能直接搜到目标 URL 的字符串。
入口页和目标 URL 都抓了,但频率很低
这属于抓取预算层面的问题,和抓取速度、站点整体质量、入口页数量都有关系。此时继续加入口页,边际效果会越来越小,不如先看目标 URL 那一侧的内容和结构。
日志里大量 4xx 和 5xx
先修服务端,再谈 URL 发现。持续返回错误会让蜘蛛降低对你整个域名的抓取频率,而且恢复需要时间。
把日志当成排查起点,而不是结论
日志能告诉你“发生了什么”,但不会告诉你“为什么”。看到蜘蛛只抓入口页,需要回到 HTML 结构、robots 规则、响应头去验证;看到蜘蛛完全不出现,则要确认新域名是否有外链、入口页是否被提交、服务器是否对蜘蛛 IP 做了拦截。把日志、页面源码、robots.txt 三份材料对着看,定位速度会快很多。
不要用日志里的抓取次数去承诺收录结果,抓取量高和收录好是两件事。