UserAgentUtils 解析 User-Agent 字符串

user-agent-utils 是一个用来解析 User-Agent 字符串的 Java 类库。
其能够识别的内容包括:
超过150种不同的浏览器;
7种不同的浏览器类型;
超过60种不同的操作系统;
6种不同的设备类型;
9种不同的渲染引擎;
9种不同的Web应用,如HttpClient、Bot。
GitHub主页:https://github.com/HaraldWalker/user-agent-utils

<dependency>
   <groupId>eu.bitwalker</groupId>
   <artifactId>UserAgentUtils</artifactId>
   <version>1.21</version>
</dependency>
String agent=request.getHeader("User-Agent");
//"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.81 Safari/537.36"

//解析agent字符串
UserAgent userAgent = UserAgent.parseUserAgentString(agent);
//获取浏览器对象
Browser browser = userAgent.getBrowser();
//获取操作系统对象
OperatingSystem operatingSystem = userAgent.getOperatingSystem();

System.out.println("浏览器名:"+browser.getName());
System.out.println("浏览器类型:"+browser.getBrowserType());
System.out.println("浏览器家族:"+browser.getGroup());
System.out.println("浏览器生产厂商:"+browser.getManufacturer());
System.out.println("浏览器使用的渲染引擎:"+browser.getRenderingEngine());
System.out.println("浏览器版本:"+userAgent.getBrowserVersion());
        
System.out.println("操作系统名:"+operatingSystem.getName());
System.out.println("访问设备类型:"+operatingSystem.getDeviceType());
System.out.println("操作系统家族:"+operatingSystem.getGroup());
System.out.println("操作系统生产厂商:"+operatingSystem.getManufacturer());
浏览器名:Chrome
浏览器类型:WEB_BROWSER
浏览器家族:CHROME
浏览器生产厂商:GOOGLE
浏览器使用的渲染引擎:WEBKIT
浏览器版本:70.0.3538.25
操作系统名:Windows 10
访问设备类型:COMPUTER
操作系统家族:WINDOWS
操作系统生产厂商:MICROSOFT
原文地址:https://www.cnblogs.com/ooo0/p/14945665.html