User Agent 解析

解析 user agent 字符串

开发者工具

如何使用 User Agent 解析

  1. 1您当前的用户代理已预填充
  2. 2粘贴任何自定义用户代理字符串
  3. 3即时查看解析后的组件

关于 User Agent 解析

用户代理解析器解码 User-Agent HTTP 头字符串,并提取结构化信息:浏览器名称和版本、操作系统、设备类型(移动设备、平板电脑或桌面设备)和渲染引擎。粘贴任何用户代理字符串即可即时分析。

用户代理字符串随每个 HTTP 请求发送,众所周知既冗长又难以阅读。此工具一步将其翻译为通俗语言。您当前浏览器的用户代理会自动预填充。

您也可以粘贴日志、分析工具或测试套件中的任何自定义用户代理字符串进行分析。

User Agent 解析的主要功能

  • 预填充您当前浏览器的用户代理以进行即时检查
  • 从任何用户代理字符串中提取浏览器名称和版本
  • 识别操作系统和操作系统版本
  • 检测设备类型:桌面、移动或平板
  • 显示渲染引擎(WebKit、Gecko、Blink)
  • 支持来自日志或分析工具的任何用户代理字符串
  • 完全在浏览器内运行,无服务器请求
  • 一键复制完整解析摘要

示例

解析访问日志中的移动 Safari 用户代理

从服务器访问日志的用户代理字符串中识别设备和浏览器。

输入

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 17.0 | 操作系统: iOS 17.0 | 设备: iPhone(移动)| 引擎: WebKit

识别无头 Chrome 机器人用户代理

通过解析其用户代理字符串检测自动无头浏览器活动。

输入

Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/120.0.0.0 Safari/537.36

输出

浏览器: Headless Chrome 120 | 操作系统: Linux x86_64 | 设备: 桌面(无头)

常见使用场景

  • 分析 Web 服务器访问日志中的用户代理字符串以了解访问者设备
  • 通过检查确切的用户代理来调试特定于浏览器的问题
  • 在 Web 分析实现中验证用户代理解析逻辑
  • 从无头 Chrome 或 Puppeteer 识别机器人或自动浏览器流量
  • 通过分析移动用户代理字符串来测试移动检测逻辑
  • 在实现服务器端解析时理解用户代理格式

故障排除

浏览器版本显示为未知

解决方案

某些浏览器使用非标准版本字符串。现代浏览器也参与用户代理简化。始终显示原始字符串以供直接检查。

设备类型在移动设备上被检测为桌面

解决方案

某些移动浏览器报告类桌面的用户代理。检查完整用户代理字符串中的 'Mobile'、'Android' 或 'iPhone' 标记。

Chrome 用户代理显示为 Safari

解决方案

Chrome 的用户代理出于历史兼容性包含 'Safari'。区分标记是 'Chrome/'。解析器通过首先查找此标记来正确识别 Chrome。

常见问题

从用户代理中提取什么信息?

浏览器名称和版本、操作系统、设备类型(桌面、移动或平板)和渲染引擎。也显示原始用户代理字符串。

为什么大多数用户代理以 "Mozilla/5.0" 开头?

"Mozilla/5.0" 是历史遗留物。早期浏览器为了兼容性模拟 Netscape。现代浏览器延续了这一惯例。

可以从用户代理区分 Chrome、Chromium 和 Edge 吗?

是的。Chrome、Chromium、Edge 和 Opera 在其用户代理字符串中包含独特的标记(Chrome、Edg、OPR)。

用户代理检测对于生产使用可靠吗?

用户代理解析对分析很有用,但不应作为功能检测的唯一机制。使用功能检测(检查特定浏览器 API)代替。

什么是用户代理简化?

现代 Chrome 简化其用户代理字符串以限制指纹识别。特定的操作系统版本和次要浏览器版本被替换为通用值。

可以测试来自机器人或爬虫的用户代理吗?

是的。粘贴任何用户代理字符串——包括来自 Googlebot、cURL、Postman、Puppeteer 或 Playwright 的字符串——工具都会解析它。

我的数据会被发送到服务器吗?

不会。所有解析均使用 JavaScript 字符串分析在您的浏览器本地执行。

浏览器引擎和浏览器有什么区别?

渲染引擎处理 HTML/CSS 并执行 JavaScript。Chrome、Edge 和 Opera 使用 Blink。Firefox 使用 Gecko。Safari 使用 WebKit。