User-Agent解析
解析UA字符串,识别浏览器、内核、操作系统、设备与爬虫
User-Agent 字符串
粘贴浏览器开发者工具请求头里的 User-Agent、日志中的访问者标识,或客服收到的截图文字,都能一次拆出浏览器、内核与系统。
这段 UA 说明什么?
User-Agent(UA)是浏览器在每次 HTTP 请求中自动携带的一串文本,用来告诉服务器「我是谁」。它由四部分组成:Mozilla/5.0 兼容头、(...) 内的系统环境、一串内核标识、以及浏览器自身版本。
工具介绍
User-Agent 是每次请求都会带上的一串文本,用来说明「我是谁」。它在日志分析、访问统计、兼容性排查里出现频率很高,但字段顺序历史包袱重,肉眼很容易读错:
- 六个维度识别:浏览器或客户端、渲染内核、操作系统、设备类型、CPU 架构、语言环境
- 逐段高亮对照:悬停任意片段即可看到它的真实含义,包括
Mozilla/5.0与(KHTML, like Gecko)这类兼容伪装声明 - 国产与移动客户端:微信、企业微信、钉钉、抖音、QQ 浏览器、UC、夸克、小米/华为/OPPO/vivo 浏览器等均可识别
- 爬虫与程序判定:百度、谷歌、必应、搜狗、360、Bytespider 等蜘蛛,以及 curl、wget、python-requests、OkHttp、Postman 等程序化访问
- 版本换算:Windows NT 内核号换成市场名称,iOS 与 macOS 的下划线版本号还原为小数点
- 本机 UA 一键读取:直接查看当前浏览器上报的 UA,便于填进配置与工单
使用场景
- 从 Nginx、CDN 日志里快速判断某条访问是什么设备与浏览器
- 客服收到用户截图的 UA 文本,确认是微信内打开还是系统浏览器
- 前端排查 H5 页面在 iOS 微信内表现不一致的问题
- 写中间件规则时区分搜索引擎蜘蛛与恶意脚本请求
- 配置 UA 嗅探、双端跳转或灰度策略前核对判断条件
常见 UA 结构对照
| 设备 / 浏览器 | 特征片段 | 读法要点 |
|---|---|---|
| Windows Chrome | Windows NT 10.0; Win64; x64 ... Chrome/131.0 | NT 10.0 同时覆盖 Win10 与 Win11,结尾的 Safari/537.36 只是兼容遗留 |
| Windows Edge | ... Chrome/131.0 ... Edg/131.0 | 新版 Edge 基于 Chromium,看 Edg/ 才是真身 |
| macOS Safari | Version/17.4 Safari/605.1.15 | Version/ 是 Safari 版本号,前面 605 是 WebKit |
| Windows Firefox | rv:132.0) Gecko/20100101 Firefox/132.0 | Gecko/20100101 是固定写法,真实版本看 rv: |
| iPhone Safari | CPU iPhone OS 17_4 like Mac OS X ... Mobile/15E148 | 17_4 即 iOS 17.4,出现 Mobile 表示手机端 |
| 安卓微信 | MicroMessenger/8.0.40 WeChat/arm64 NetType/WIFI | 带 MicroMessenger 即微信内置浏览器,H5 授权只能在这个环境走 |
| 搜索引擎蜘蛛 | compatible; Baiduspider/2.0 | compatible; 后紧跟蜘蛛名与官网说明 |
常见问题
- UA 能被伪造吗?可以,任何客户端都能自定义这串文本。判断真实来源要结合 JS 指纹、请求频率与签名校验,本工具只解读字面信息
- 为什么浏览器不再展示完整 UA?主流浏览器已推进「用户代理精简版」,把版本号冻结为固定值以减少指纹追踪,此时细节要改用
Client Hints获取 - 怎么判断用户是否在小程序或 App 内?看有没有
MicroMessenger、miniProgram、AliApp等客户端标识,本工具会在识别结果中直接给出客户端名称
需要把网址拆成域名与参数,请使用 URL解析工具;查询 IP 归属地请见 IP归属地查询;做 UA 正则过滤可参考 正则表达式测试。解析逻辑全部在浏览器本地执行,粘贴的内容不会上传服务器。