Найти устройство с помощью браузера

С помощью formstack они записывают браузер при каждой отправке формы. Из этого я хотел бы показать устройство, будь то настольный компьютер, планшет или мобильный телефон. Есть ли база данных, которая расшифрует это? У меня есть 317 различных браузеров, таких как:

Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36

Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; MAARJS; rv:11.0) like Gecko

Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) 

Chrome/47.0.2526.106 Safari/537.36

Chrome 47.0.2526.106 / Windows

IE 10.0 / Windows 8

Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) 

Chrome/47.0.2526.106 Safari/537.36 OPR/34.0.2036.47

1 ответ

  1. UserAgentString.com имеет список строк агента пользователя, который кажется довольно полным, а также предлагает RESTful API .
    Это поможет вам декодировать строки автоматически.


    Если вы работаете с JavaScript, также посмотрите UAParser.js:

    var result = UAParser('Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.2 (KHTML, like Gecko) Ubuntu/11.10 Chromium/15.0.874.106 Chrome/15.0.874.106 Safari/535.2');
    
    console.log(result.browser);          // {name: "Chromium", version: "15.0.874.106"}
    console.log(result.device);           // {model: undefined, type: undefined, vendor: undefined}
    console.log(result.os);               // {name: "Ubuntu", version: "11.10"}
    console.log(result.os.version);       // "11.10"
    console.log(result.engine.name);      // "WebKit"
    console.log(result.cpu.architecture); // "amd64"
    

    Для PHP, функция get_browser()может помочь вам с этим:

    <?php
    echo $_SERVER['HTTP_USER_AGENT'] . "\n\n";
    
    $browser = get_browser(null, true);
    print_r($browser);
    ?>
    
    ---------------------
    
    Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040803 Firefox/0.9.3
    
    Array
    (
        [browser_name_regex] => ^mozilla/5\.0 (windows; .; windows nt 5\.1; .*rv:.*) gecko/.* firefox/0\.9.*$
        [browser_name_pattern] => Mozilla/5.0 (Windows; ?; Windows NT 5.1; *rv:*) Gecko/* Firefox/0.9*
        [parent] => Firefox 0.9
        [platform] => WinXP
        [browser] => Firefox
        [version] => 0.9
        ....
    }