很多人判断入口页有没有起作用,只看入口页本身被请求了多少次。入口页被访问只是第一步,真正的目标是入口页里的链接被搜索蜘蛛跟进并请求。这两件事必须分开看,否则很容易得出错误结论。
先区分两类请求
在访问日志里,入口页的 URL 和目标 URL 是两行完全不同的记录。判断时先把它们拆开:
- 入口页请求:说明搜索蜘蛛读到了入口页,只证明发现环节走通了一部分。
- 目标 URL 请求:说明它确实顺着链接走到了你的页面,这是更值得关注的信号。
- 如果只有第一类、没有第二类,问题多半出在链接是否可解析、是否可被跟进,而不是入口页本身有没有被抓。
日志里重点看哪几个字段
- User-Agent:先按 UA 过滤出可疑行,再核对 IP 段。UA 可以伪造,只看 UA 容易误判。
- 请求时间:看目标 URL 的首次请求是否出现在入口页请求之后,间隔较长时不要急着下结论。
- 状态码:200、301、404、403、503 含义各不相同,遇到跳转要一路跟到最终响应。
- Referer:部分请求会带上来源,可以用来辅助确认链接路径,但缺失是常态,不能当作唯一依据。
- 请求方法:HEAD 请求很常见,它不代表页面被完整抓取,也不代表没有被抓取。
几个容易误判的情况
- 日志里看不到,不等于没抓:CDN、反向代理、独立的日志系统都可能让请求不进源站日志。
- 只抓到一次:搜索蜘蛛对同一 URL 的抓取频率本来就不固定,一次请求已经能说明链路是通的。
- 入口页被抓很多次,目标 URL 一次都没有:要检查链接是否靠 JavaScript 渲染、是否被 nofollow、是否落在 robots.txt 的 Disallow 范围内。
- 目标 URL 返回 200 但状态异常:抓取和后续处理是两件事,日志只能证明抓取发生过,说明不了更多。
- UA 明显异常的高频请求:这类流量可能来自扫描或采集,统计时应先剔除,避免高估效果。
确认没有抓取时的排查顺序
- 用浏览器直接打开入口页,确认链接在原始 HTML 里就能看到,而不是渲染之后才出现。
- 检查入口页是否返回 200,是否存在跳转链路,是否有 meta robots 或响应头层面的限制。
- 确认链接指向的最终 URL 可以正常访问,并且没有被该站自身的 robots 规则挡住。
- 核对日志采集链路,确认源站、CDN、日志服务三处的记录是否完整、时间是否对齐。
- 连续观察几天再判断,不要用一两个小时的样本下结论。
日志能看到的是“有没有被请求”,看不到的是后续的评估与收录决策。把它当作验证抓取链路的工具,而不是效果的保证。
建议的记录方式
把入口页请求数、目标 URL 请求数、首次请求时间、状态码分布整理成一张按天汇总的简单表格,连续观察两到四周。这样既能看清趋势,也方便在调整链接结构或入口页之后做前后对比。数量本身会有波动,重点看的是目标 URL 是否从完全没有请求,变成有相对稳定的请求。