java 解析http user-agent 信息

解析http user-agent信息,使用uasparser-0.6.1.jar和jregex-1.2_01.jar兩個包java

 

 1 import cz.mallat.uasparser.OnlineUpdater;
 2 import cz.mallat.uasparser.UASparser;
 3 import cz.mallat.uasparser.UserAgentInfo;
 4 
 5 
 6 import java.io.IOException;
 7 
 8 /**
 9  * Created by Edward on 2016/7/1.
10  */
11 public class UserAgentUtil {
12 
13     static UASparser uasParser = null;
14 
15     // 初始化uasParser對象
16     static {
17         try {
18             uasParser = new UASparser(OnlineUpdater.getVendoredInputStream());
19         } catch (IOException e) {
20             e.printStackTrace();
21         }
22     }
23 
24     public static void main(String[] args)
25     {
26         String str = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.130 Safari/537.36";
27         System.out.println(str);
28         try {
29             UserAgentInfo userAgentInfo = UserAgentUtil.uasParser.parse(str);
30             System.out.println("操做系統名稱:"+userAgentInfo.getOsFamily());//
31             System.out.println("操做系統:"+userAgentInfo.getOsName());//
32             System.out.println("瀏覽器名稱:"+userAgentInfo.getUaFamily());//
33             System.out.println("瀏覽器版本:"+userAgentInfo.getBrowserVersionInfo());//
34             System.out.println("設備類型:"+userAgentInfo.getDeviceType());
35             System.out.println("瀏覽器:"+userAgentInfo.getUaName());
36             System.out.println("類型:"+userAgentInfo.getType());
37 
38         } catch (IOException e) {
39             e.printStackTrace();
40         }
41     }
42 }

運行結果:chrome

 

 

User-Agent信息經過瀏覽器自帶工具可查看:瀏覽器

以下使用的是chrome瀏覽器工具

 

程序中static塊,在初始化的時候被執行,初始化狀況以下:spa

1.當建立某個類的新實例時;
2.當調用某個類的靜態方法時;
3.當使用某個類或接口的靜態字段時;
4.當調用Java API中的某些反射方法時,好比類Class中的方法,或者java.lang.reflect中的類的方法時;
5.當初始化某個子類時;
6.當虛擬機啓動某個被標明爲啓動類的類(main方法);操作系統

相關文章
相關標籤/搜索