zoukankan      html  css  js  c++  java
  • UserAgent个人整理

    什么是UserAgent

    User Agent中文名为用户代理 是Http协议中的一部分,属于头域的组成部分,User Agent也简称UA。用较为普通的一点来说,是一种向访问网站提供你所使用的浏览器类型、操作系统及版本、CPU 类型、浏览器渲染引擎、浏览器语言、浏览器插件等信息的标识。用户所访问的网站可以显示不同的排版从而为用户提供更好的体验或者进行信息统计.UA字符串在每次浏览器 HTTP 请求时发送到服务器!

    举例UserAgent信息详情

    原文链接:https://blog.csdn.net/master_ning/article/details/81746879
    现在,随便拿出一个ua,

    Mozilla/5.0 (Linux; U; Android 7.0;m2 note Build/LMY47D) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/5.0.2 MQQBrowser/6.7 Mobile/15A372 Safari/537.36
    Mozilla/5.0,这个是固定写法,一般都是写这个,有很少一部分是写,Mozilla/4.0

    (Linux; U; Android 7.0;m2 note Build/LMY47D) 里面就是安卓系统版本,手机型号

    AppleWebKit/604.1.38,这个是处理器内核信息

    (KHTML, like Gecko) Version/5.0.2,这给也是固定写法

    MQQBrowser/6.7,这个是浏览器信息以及版本信息

    Mobile/15A372,这个代表该ua是移动设备,即手机,平板之类的

    Safari/537.36,这个不是特别重要,可以不用携带

    这里更改浏览器信息,网站后台相应信息就发生相应更改,目前测下来,手机端的Chrome浏览器,后台无法正确捕捉到

    java网上使用第三方包解析(一)

    转:网上使用第三方包解析(一)
    UserAgent
    引入pom:

      <dependency>
                <groupId>eu.bitwalker</groupId>
                <artifactId>UserAgentUtils</artifactId>
                <version>1.21</version>
            </dependency>
    

    使用:返回的UserAgent对象就是解析后的

            UserAgent userAgent = UserAgent.parseUserAgentString(str);
    

    UserAgentUtil的工具类官网:https://www.bitwalker.eu/software/user-agent-utils

    java网上使用第三方包解析(二)

    转:https://blog.csdn.net/yushouling/article/details/55047093
    引入依赖:

      	<dependency>
                <groupId>cz.mallat.uasparser</groupId>
                <artifactId>uasparser</artifactId>
                <version>0.6.0</version>
            </dependency>
    
            <dependency>
                <groupId>net.sourceforge.jregex</groupId>
                <artifactId>jregex</artifactId>
                <version>1.2_01</version>
            </dependency>
    

    代码:

    
    import cz.mallat.uasparser.OnlineUpdater;
    import cz.mallat.uasparser.UASparser;
    import cz.mallat.uasparser.UserAgentInfo;
    import eu.bitwalker.useragentutils.UserAgent;
    
    import java.io.IOException;
    
    public class UserAgentTest {
    
        static UASparser uasParser = null;
    
        static {
            try {
                uasParser = new UASparser(OnlineUpdater.getVendoredInputStream());
                // java.lang.UnsupportedClassVersionError:
                // cz/mallat/uasparser/UASparser : Unsupported major.minor version 51.0
                // 用jdk1.6测试时会报以上错,需要jdk1.7以上版本支持
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    
        public static void main(String[] args) {
            String str = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)";
            try {
                UserAgentInfo userAgentInfo = UserAgentTest.uasParser.parse(str);
                System.out.println("操作系统家族:" + userAgentInfo.getOsFamily());
                System.out.println("操作系统详细名称:" + userAgentInfo.getOsName());
                System.out.println("浏览器名称和版本:" + userAgentInfo.getUaName());
                System.out.println("类型:" + userAgentInfo.getType());
                System.out.println("浏览器名称:" + userAgentInfo.getUaFamily());
                System.out.println("浏览器版本:" + userAgentInfo.getBrowserVersionInfo());
                System.out.println("设备类型:" + userAgentInfo.getDeviceType());
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
    

    浏览器User-Agent的详细信息

    转载部分常用的user-agent的例子:
    PC端:

    safari 5.1 – MAC
    User-Agent:Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_8; en-us) AppleWebKit/534.50 (KHTML, like Gecko) Version/5.1 Safari/534.50

    safari 5.1 – Windows
    User-Agent:Mozilla/5.0 (Windows; U; Windows NT 6.1; en-us) AppleWebKit/534.50 (KHTML, like Gecko) Version/5.1 Safari/534.50

    IE 9.0
    User-Agent:Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0;

    IE 8.0
    User-Agent:Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0)

    IE 7.0
    User-Agent:Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)

    IE 6.0
    User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)

    Firefox 4.0.1 – MAC
    User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:2.0.1) Gecko/20100101 Firefox/4.0.1

    Firefox 4.0.1 – Windows
    User-Agent:Mozilla/5.0 (Windows NT 6.1; rv:2.0.1) Gecko/20100101 Firefox/4.0.1

    Opera 11.11 – MAC
    User-Agent:Opera/9.80 (Macintosh; Intel Mac OS X 10.6.8; U; en) Presto/2.8.131 Version/11.11

    Opera 11.11 – Windows
    User-Agent:Opera/9.80 (Windows NT 6.1; U; en) Presto/2.8.131 Version/11.11

    Chrome 17.0 – MAC
    User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_0) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.56 Safari/535.11

    傲游(Maxthon)
    User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Maxthon 2.0)

    腾讯TT
    User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; TencentTraveler 4.0)

    世界之窗(The World) 2.x
    User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)

    世界之窗(The World) 3.x
    User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; The World)

    搜狗浏览器 1.x
    User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; SE 2.X MetaSr 1.0; SE 2.X MetaSr 1.0; .NET CLR 2.0.50727; SE 2.X MetaSr 1.0)

    360浏览器
    User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; 360SE)

    Avant
    User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Avant Browser)

    Green Browser
    User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)

    移动设备端:

    safari iOS 4.33 – iPhone
    User-Agent:Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_3_3 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8J2 Safari/6533.18.5

    safari ios 4.33 – iPod Touch
    User-Agent:Mozilla/5.0 (iPod; U; CPU iPhone OS 4_3_3 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8J2 Safari/6533.18.5

    safari iOS 4.33 – iPad
    User-Agent:Mozilla/5.0 (iPad; U; CPU OS 4_3_3 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8J2 Safari/6533.18.5

    Android N1
    User-Agent: Mozilla/5.0 (Linux; U; android 2.3.7; en-us; Nexus One Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1

    Android QQ浏览器 For android
    User-Agent: MQQBrowser/26 Mozilla/5.0 (linux; U; Android 2.3.7; zh-cn; MB200 Build/GRJ22; CyanogenMod-7) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1

    Android Opera Mobile
    User-Agent: Opera/9.80 (Android 2.3.4; Linux; Opera Mobi/build-1107180945; U; en-GB) Presto/2.8.149 Version/11.10

    Android Pad Moto Xoom
    User-Agent: Mozilla/5.0 (Linux; U; Android 3.0; en-us; Xoom Build/HRI39) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13

    BlackBerry
    User-Agent: Mozilla/5.0 (BlackBerry; U; BlackBerry 9800; en) AppleWebKit/534.1+ (KHTML, like Gecko) Version/6.0.0.337 Mobile Safari/534.1+

    WebOS HP Touchpad
    User-Agent: Mozilla/5.0 (hp-tablet; Linux; hpwOS/3.0.0; U; en-US) AppleWebKit/534.6 (KHTML, like Gecko) wOSBrowser/233.70 Safari/534.6 TouchPad/1.0

    Nokia N97
    User-Agent: Mozilla/5.0 (SymbianOS/9.4; Series60/5.0 NokiaN97-1/20.0.019; Profile/MIDP-2.1 Configuration/CLDC-1.1) AppleWebKit/525 (KHTML, like Gecko) BrowserNG/7.1.18124

    Windows Phone Mango
    User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows Phone OS 7.5; Trident/5.0; IEMobile/9.0; HTC; Titan)

    UC无
    User-Agent: UCWEB7.0.2.37/28/999

    UC标准
    User-Agent: NOKIA5700/ UCWEB7.0.2.37/28/999

    UCOpenwave
    User-Agent: Openwave/ UCWEB7.0.2.37/28/999

    UC Opera
    User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; ) Opera/UCWEB7.0.2.37/28/999

    二、浏览器识别

    1、IE浏览器(以IE 9.0 为例)

    PC端:User-Agent:Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0;
    移动设备:User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows Phone OS 7.5; Trident/5.0; IEMobile/9.0; HTC; Titan)

    由于遨游、世界之窗、360浏览器、腾讯浏览器以及搜狗浏览器、Avant、Green Browser均采用IE的内核,因此IE浏览器判断的标准是”MSIE“字段,MSIE字段后面的数字为版本号,但同时还需要判断不包 含”Maxthon“、”The world“、”360SE“、”TencentTraveler“、”SE“、”Avant“等字段(Green Browser没有明显标识)。移动设备还需要判断IEMobile+版本号。

    2、360浏览器

    PC端:User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; InfoPath.2; .NET4.0C; .NET4.0E; .NET CLR 2.0.50727; 360SE)
    移动设备:暂无

    360浏览器的判断标准是”360SE”字段,没有版本表示。

    3、搜狗浏览器

    PC端:User-Agent:Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; SE 2.X MetaSr 1.0; SE 2.X MetaSr 1.0; .NET CLR 2.0.50727; SE 2.X MetaSr 1.0)
    移动设备:暂无

    搜狗浏览器的判断标准是”SE“、”MetaSr“字段,版本号为SE后面的数字。

    4、Chrome

    PC端:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_0) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.56 Safari/535.11

    移动设备:User-Agent: Mozilla/5.0 (Linux; U; Android 2.2.1; zh-cn; HTC_Wildfire_A3333 Build/FRG83D) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1

    PC端chrome浏览器的判断标准是chrome字段,chrome后面的数字为版本号;移动端的chrome浏览器判断”android“、”linux“、”mobile safari“等字段,version后面的数字为版本号。

    5、Safari

    PC端:User-Agent:Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_8; en-us) AppleWebKit/534.50 (KHTML, like Gecko) Version/5.1 Safari/534.50

    移动设备:User-Agent:Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_3_3 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8J2 Safari/6533.18.5

    由于Chrome及Nokia’s Series 60 browser也使用WebKit内核,因此Safari浏览器的判断必须是:包含safari字段,同时不包含chrome等信息,确定 后”version/“后面的数字即为版本号。在以上条件下包含Mobile字段的即为移动设备上的Safari浏览器。

    6、腾讯浏览器

    PC端:User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; TencentTraveler 4.0; .NET CLR 2.0.50727)

    移动设备:User-Agent: MQQBrowser/26 Mozilla/5.0 (Linux; U; Android 2.3.7; zh-cn; MB200 Build/GRJ22; CyanogenMod-7) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1

    腾讯浏览器的判断标准是”TencentTraveler“或者”QQBrowser“,TencentTraveler或QQBrowser后面的数字为版本号。

    7、Firefox

    PC端:User-Agent:Mozilla/5.0 (Windows NT 6.1; rv:2.0.1) Gecko/20100101 Firefox/4.0.1

    移动设备:User-Agent: Mozilla/5.0 (Androdi; Linux armv7l; rv:5.0) Gecko/ Firefox/5.0 fennec/5.0

    Firefox的判断标准是Firefox字段,firefox后面的数字为版本号。

    8、The world

    PC端:User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; The World)

    移动设备:暂无

    Theworld浏览器的判断标准是”The world“字段,没有标示版本号。

    需要注意的是:The world 2.x版本的User-Agent中没有”The world“的字段。

    9、遨游

    PC端:User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Maxthon 2.0)

    移动设备:暂无

    遨游浏览器的判断标准是”Maxthon“,Maxthon后面的数字为版本号。

    10、Opera

    PC端:User-Agent:Opera/9.80 (Windows NT 6.1; U; en) Presto/2.8.131 Version/11.11

    移动设备:User-Agent: Opera/9.80 (Android 2.3.4; Linux; Opera mobi/adr-1107051709; U; zh-cn) Presto/2.8.149 Version/11.10

    opera浏览器的判断标准是opera字段,opera字段后面的数字为版本号。

    11、UC浏览器

    UC Web有多种模式浏览方式,对应的User-Agent为:

    UC无
    User-Agent: UCWEB7.0.2.37/28/999

    UC标准
    User-Agent: NOKIA5700/ UCWEB7.0.2.37/28/999

    UCOpenwave
    User-Agent: Openwave/ UCWEB7.0.2.37/28/999

    UC Opera
    User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; ) Opera/UCWEB7.0.2.37/28/999

    UC浏览器的判断标准是”UCWEB“字段,UCWEB后面的数字为版本号。

    作者:大牧莫邪
    链接:https://www.jianshu.com/p/da6a44d0791e
    来源:简书
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

    世界上所有的不公平都是由于当事人能力不足造成的.
  • 相关阅读:
    Spark RDD概念学习系列之不同角度看RDD
    Spark RDD概念学习系列之典型RDD的特征
    Spark RDD概念学习系列之RDD的本质特征
    Spark RDD概念学习系列之RDD接口
    kettle的下载、安装和初步使用(Ubuntu 16.04平台下)(图文详解)
    Neo4j下执行cypher-shell时,Connection refused问题解决?
    Ubuntu14.04下沙盒数据导入到 Neo4j 数据库(图文详解)
    Ubuntu16.04下沙盒数据导入到 Neo4j 数据库(图文详解)
    Neo4j沙盒实验申请过程步骤(图文详解)
    Ubuntu14.04下Mongodb数据库可视化工具安装部署步骤(图文详解)(博主推荐)
  • 原文地址:https://www.cnblogs.com/javayida/p/13346767.html
Copyright © 2011-2022 走看看