java 解析user-agent 信息

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

import cz.mallat.uasparser.OnlineUpdater;

import cz.mallat.uasparser.UASparser;

import cz.mallat.uasparser.UserAgentInfo;

import java.io.IOException;

/**

* Created by Edward on 2016/7/1.

*/

public class UserAgentUtil {

static UASparser uasParser = null;

// 初始化uasParser对象

static {

try {

uasParser = new UASparser(OnlineUpdater.getVendoredInputStream());

} catch (IOException e) {

e.printStackTrace();

}

}

public static void main(String[] args)

{

String str = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.130 Safari/537.36";

System.out.println(str);

try {

UserAgentInfo userAgentInfo = UserAgentUtil.uasParser.parse(str);

System.out.println("操作系统名称:"+userAgentInfo.getOsFamily());//

System.out.println("操作系统:"+userAgentInfo.getOsName());//

System.out.println("浏览器名称:"+userAgentInfo.getUaFamily());//

System.out.println("浏览器版本:"+userAgentInfo.getBrowserVersionInfo());//

System.out.println("设备类型:"+userAgentInfo.getDeviceType());

System.out.println("浏览器:"+userAgentInfo.getUaName());

System.out.println("类型:"+userAgentInfo.getType());

} catch (IOException e) {

e.printStackTrace();

}

}

}

运行结果:

User-Agent信息通过浏览器自带工具可查看:

如下使用的是chrome浏览器

程序中static块,在初始化的时候被执行,初始化情况如下:

1.当创建某个类的新实例时;

2.当调用某个类的静态方法时;

3.当使用某个类或接口的静态字段时;

4.当调用Java API中的某些反射方法时,比如类Class中的方法,或者java.lang.reflect中的类的方法时;

5.当初始化某个子类时;

6.当虚拟机启动某个被标明为启动类的类(main方法);

以上就是本文的全部内容了,希望大家能够喜欢

以上是 java 解析user-agent 信息 的全部内容, 来源链接: utcz.com/p/209443.html

回到顶部