日志里的“蜘蛛”不一定都是搜索引擎
很多站长在核对收录前,会先翻服务器日志,看到一批带蜘蛛标识的请求,就默认搜索引擎来过。但日志里的 UA 只是一个字符串,客户端想写什么就写什么。把伪造的、误认的请求一起算进去,抓取量会虚高,后面的判断也会跟着偏。
所以收录核对的第一步,不是数蜘蛛来了多少次,而是先确认:这些请求里,哪些是搜索引擎派来的,哪些只是看起来像。
三种常见的“像蜘蛛但不是”的请求
- 伪装的采集程序:直接把 UA 改成 Googlebot 或百度蜘蛛,用来绕过 robots.txt 或防盗策略。它们的 IP 通常不属于对应的搜索引擎。
- 站内工具与服务:预渲染、SSR 中间层、探活监控、CDN 回源检测、SEO 工具模拟抓取,都会带类似标识访问。
- 同名不同用途的官方爬虫:图片、广告、视频、安全扫描等爬虫,UA 里也带搜索引擎名字,但职责不是为搜索索引抓取正文。
用反向解析确认身份
UA 可以伪造,IP 和反向解析不容易伪造。主流搜索引擎都公开了验证思路,做法基本一致:拿请求 IP 做反向 DNS,得到一个主机名,再把主机名正向解析回去,看是否回到同一个 IP,并且域名归属正确。
- 从日志里取出请求 IP,而不是只看 UA。
- 对 IP 做反向解析,得到主机名。
- 对主机名做正向解析,比对是否与原始 IP 一致。
- 主机名的域名后缀要属于该搜索引擎,才认定为真。
不能只凭“反解得到一个域名”就放行,正向解析必须回得去,域名归属也要对,两步缺一不可。
把真蜘蛛的请求单独存一份
验证之后,建议把确认过的搜索引擎请求单独写一份日志或表,字段至少包含:时间、URL、状态码、响应字节数、UA、IP、响应耗时。后面所有收录核对,都基于这份干净的数据来算。
- 按模板分组:列表页、详情页、聚合页、搜索结果页分开统计,避免少数高频模板拉偏整体判断。
- 按状态码分层:200、301、404、403、5xx 各自占比,出错页面单独列出。
- 按 URL 去重:同一地址被反复抓取,和有大量新地址被发现,含义完全不同。
分辨清楚之后,再看三个问题
抓取量涨了,索引没动
常见原因是蜘蛛主要在爬低价值页面:分页、筛选、参数组合、空结果页。抓取预算被这些地址消耗,真正需要的页面反而排不上队。这时要做的不是补内容,而是先管住入口和参数。
蜘蛛只抓了首页和列表
说明详情页的发现路径不够,或者层级太深。可以在列表页给出稳定的内链,配合 sitemap 提交,让地址能被持续发现。
抓取有响应,但索引里没有
抓取和收录是两件事。抓了可能因为内容重复、质量不足、状态码不合适而不入库;也可能是刚抓完,索引还没更新。判断时要结合抓取时间、页面当前内容和 canonical 指向一起看。
顺序上的建议
- 先洗日志:分出真假蜘蛛,只保留确认过的请求。
- 再看抓取覆盖:哪些模板被抓了,哪些一直没被抓。
- 再看状态与内容:抓到的页面返回什么、正文是否有效。
- 最后对索引:用站长工具或站内查询,反查这些 URL 是否真的在索引里。
把这几步分开做,收录核对才有基础。蜘蛛来过不等于页面被收录,先把日志里的噪声去掉,数据才能说明问题。