User-Agent 解析
粘贴 UA 字符串识别浏览器 / 操作系统 / 设备 / 引擎
SEO 视角:识别 Googlebot/Bingbot/百度蜘蛛
粘贴 UA 字符串识别浏览器 / 操作系统 / 设备 / 引擎
了解工具定位 · 使用场景 · 对比优势
粘贴任意 User-Agent 字符串,立即识别其对应的爬虫身份:Googlebot、Bingbot、百度蜘蛛或其他搜索引擎。SEO 从业者排查日志、站长判断请求来源、开发者调试爬虫访问规则时使用。解析在浏览器内完成,UA 数据不上传服务器。
SEO 工程师在排查网站收录异常时,常需要确认服务器日志里的 User-Agent 是否来自真实搜索引擎。本工具一键解析 UA 字符串,明确标注该爬虫属于 Googlebot、Bingbot、百度蜘蛛还是伪装 UA,帮助快速区分正常抓取与恶意爬虫,避免因误判屏蔽而损失收录。
网站安全运维人员配置 WAF 或 CDN 规则时,往往需要区分真实搜索引擎与伪装 UA 的爬虫。本工具解析后直接显示 UA 的归属厂商和爬虫类型,方便在防火墙规则中精准放行 Googlebot 等白名单,同时拦截伪装 UA 的异常请求,减少误封导致的流量损失。
数据分析师在处理网站访问日志时,需要过滤掉搜索引擎爬虫的请求才能得到真实的用户行为数据。本工具批量解析日志中的 UA 字段,自动识别并标记 Googlebot、Bingbot、百度蜘蛛等常见爬虫,帮助快速完成日志清洗,让后续的用户访问分析更准确。
前端开发者在调试移动端页面时,需要确认搜索引擎的移动端爬虫(如 Googlebot Smartphone)能否正确渲染页面。本工具解析 UA 后直接显示设备类型、操作系统和浏览器内核,帮助判断该爬虫的渲染能力,避免因 CSS/JS 兼容问题导致移动端页面被搜索引擎错误索引。
内容运营人员在上线新页面后,想验证搜索引擎看到的页面内容是否与用户一致。本工具解析 Googlebot 的 UA 后,模拟其请求头,配合服务端日志对比返回的 HTML,快速发现因 User-Agent 判断逻辑错误导致的“给搜索引擎看空白页”问题,确保页面正常收录。
| 维度 | 本工具 (ua-seo.tl654.com) | 竞品 A (whatmyuseragent.com) | 传统方法 (手动查日志) |
|---|---|---|---|
| 数据隐私 | 纯浏览器端解析,UA 字符串不上传任何服务器 | UA 字符串发送至服务器端解析,服务器留存日志 | 需导出服务器原始访问日志,日志包含完整 IP、时间戳等敏感信息 |
| 处理速度 | 毫秒级,输入即出结果 | 1-3 秒,需等待页面加载与后端响应 | 数分钟至数小时,取决于日志文件大小和 grep 命令效率 |
| 离线可用 | 完全离线,浏览器内运行,无需网络 | 必须联网,依赖后端服务 | 需在服务器或本地安装日志分析环境,离线可用 |
| 批量处理 | 单条输入,逐条解析 | 单条输入,逐条解析 | 支持批量 grep、awk 处理整个日志文件,一次性输出所有 UA 记录 |
| SEO 专用标识 | 明确标注 Googlebot、Bingbot、百度蜘蛛等搜索引擎爬虫身份 | 仅显示 UA 字符串的浏览器/操作系统信息,不区分爬虫 | 需人工对照爬虫 IP 段列表或 UA 特征字串判断,易出错 |
| 技术门槛 | 零门槛,打开网页输入即可 | 零门槛,打开网页输入即可 | 需掌握命令行基础(grep、awk)、了解正则表达式,门槛较高 |
| 结果可读性 | 结构化展示:爬虫名称、来源、类型、操作系统等 | 展示原始解析结果(浏览器版本、操作系统版本),无爬虫标注 | 输出为纯文本行,需人工逐行阅读或二次格式化 |
上手步骤 · 输入输出 · 避坑提示
| 输入 | 输出 | 说明 |
|---|---|---|
| Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) | Googlebot Smartphone | 搜索引擎蜘蛛 | Google | 典型场景:Google 移动端爬虫,SEO 最常遇到的 UA |
| Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm) | Bingbot | 搜索引擎蜘蛛 | Microsoft | 典型场景:Bing 桌面端爬虫,必应搜索核心蜘蛛 |
| Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html) | Baiduspider | 搜索引擎蜘蛛 | 百度 | 典型场景:百度桌面端爬虫,国内 SEO 必备 |
| Mozilla/5.0 (iPhone; CPU iPhone OS 17_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.0 Mobile/15E148 Safari/604.1 | Safari (iPhone) | 浏览器 | Apple | 边界 case:真实 iPhone 用户 UA,与 Googlebot 格式相似但非蜘蛛 |
| Googlebot/2.1 (+http://www.google.com/bot.html) | Googlebot | 搜索引擎蜘蛛 | Google | 边界 case:极简格式,无操作系统和浏览器信息仍能识别 |
| Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36 | Googlebot | 搜索引擎蜘蛛 | Google | 易错 case:伪造 Chrome 标识的 Googlebot,工具应正确识别为蜘蛛而非浏览器 |
| Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Mobile Safari/537.36 | Chrome (Android) | 浏览器 | Google | 易错 case:普通 Android 用户 UA,无 spider 标识,新手常误判为爬虫 |
GET / HTTP/1.1
Host: example.com
User-Agent: Mozilla/5.0 ...
Accept: */*Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)工具只解析 User-Agent 字符串本身,不是整个请求头。把整段请求头粘贴进去会导致解析失败或误判
"Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.6778.135 Mobile Safari/537.36"Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.6778.135 Mobile Safari/537.36浏览器复制时可能带外层双引号;工具按原样解析,多余引号会破坏产品/版本号提取
192.168.1.1Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36User-Agent 是浏览器/爬虫声明自身身份的字符串,IP 和 Referer 是请求头其他字段。工具只处理 UA,其他输入会显示「无法识别」
Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.6778.135 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)Googlebot 在 2020 年后开始使用 Chrome 渲染引擎的 UA 格式;旧版纯文本 UA 仍被识别为 Googlebot,但不会标记版本号
Mozilla/5.0 (iPhone; CPU iPhone OS 17_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148Mozilla/5.0 (iPhone; CPU iPhone OS 17_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.0 Mobile/15E148 Safari/604.1缺少 Safari 版本号且没有爬虫标识符(如 Googlebot/Bingbot/baiduspider),工具会判定为普通浏览器,不是搜索引擎爬虫
curl/8.4.0Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36curl 的 UA 不含浏览器引擎标识;工具会标记为「命令行工具/非浏览器」,不会匹配任何搜索引擎爬虫规则
Mozilla/5.0 (Linux; U; Android 13; zh-cn; Xiaomi 13 Pro Build/TP1A.220624.014) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/131.0.6778.135 Mobile Safari/537.36 baiduboxapp/13.0.0.10 (Baidu; P1 13)Mozilla/5.0 (Linux; Android 13; zh-cn; Xiaomi 13 Pro) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/131.0.6778.135 Mobile Safari/537.36 baiduspider/2.0baiduboxapp 是百度 App 内置浏览器,不是爬虫;百度移动爬虫的 UA 包含 baiduspider 标识符,两者虽然都来自百度但用途完全不同
公式推导 · 流程图解 · 依据出处
UA 字符串 → 模式匹配 → 爬虫标识
UA 字符串 — HTTP 请求头中的 User-Agent 字段模式匹配 — 正则或关键词匹配爬虫特征爬虫标识 — 输出:Googlebot / Bingbot / 百度蜘蛛 等输入 UA: Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)。模式匹配到 'Googlebot' 关键词,输出:Googlebot。
适用于标准 HTTP 请求头中的 UA 字段。若 UA 被伪造或缺失,匹配结果不可靠。基于 IETF RFC 7231 及各大搜索引擎公开文档。
3 种主流语言 · 复制即用
import re
# 从 User-Agent 字符串中识别主流搜索引擎爬虫
ua = "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
# 爬虫标识模式:Googlebot / Bingbot / Baiduspider
patterns = {
"Googlebot": r"Googlebot",
"Bingbot": r"bingbot|BingPreview|Msnbot",
"Baiduspider": r"Baiduspider"
}
for name, pattern in patterns.items():
if re.search(pattern, ua, re.IGNORECASE):
print(f"识别为: {name}")
break
else:
print("非主流搜索引擎爬虫")
# 输出: 识别为: Googlebotpackage main
import (
"fmt"
"regexp"
)
func main() {
ua := "Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm)"
patterns := map[string]*regexp.Regexp{
"Googlebot": regexp.MustCompile(`(?i)Googlebot`),
"Bingbot": regexp.MustCompile(`(?i)bingbot|BingPreview|Msnbot`),
"Baiduspider": regexp.MustCompile(`(?i)Baiduspider`),
}
for name, re := range patterns {
if re.MatchString(ua) {
fmt.Printf("识别为: %s\n", name)
return
}
}
fmt.Println("非主流搜索引擎爬虫")
// 输出: 识别为: Bingbot
}// 浏览器或 Node.js 中解析 User-Agent
const ua = "Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)";
const patterns = {
Googlebot: /Googlebot/i,
Bingbot: /bingbot|BingPreview|Msnbot/i,
Baiduspider: /Baiduspider/i
};
for (const [name, regex] of Object.entries(patterns)) {
if (regex.test(ua)) {
console.log(`识别为: ${name}`);
break;
}
}
// 输出: 识别为: Baiduspider7 个高频疑问
「HTTP / 网络」下的其他工具