С чем едят UserAgent / Хабр
Для начала, конечно, стоило рассказать зачем едят этот самый «пользовательский агент». Ну или, вообще, начать с того что же это за агент такой. (Кстати, никто не знает какой-нибудь славянско-православный перевод этого термина?)Но рассчитывая, что хабра юзер либо уже знает и использует useragent либо ему это не нужно, я бы не хотел останавливаться на предисловиях. И так, мой совет — употребляйте useragent с регулярными выражениями!
Конечно, тебе свойственно регулярно употреблять выражения, %username%, но они другие и для души, а я о regex. Одной из основных задач в моей работе, является правильное определение возможностей устройства и браузера конечного пользователя. Так как основной упор мы делаем на мобильные устройства (сотовые телефоны), то их я и возьму в пример. В отличие от пользователей обычных компьютеров, пользователи мобильных устройств жёстко и жестоко ограничены в разрешении экрана, возможностях браузера и т.д. У нас имеется небольшая база данных собранная и автоматически обновляемая с помощью UAProf и Wurfl. Но заголовки агентов (useragent header) постоянно изменяются и количество различий постоянно растёт. О том чтобы делать поиск очередного устройства проверкой агента один к одному не может идти и речи, но как то же надо искать. Поэтому мы стали разбираться с устройством useragent и что из него можно выжать.
Ингредиенты
Стандарты и формат — как обычно никто их не соблюдает. Формат useragent изменяется от производителя к производителю и от серии к серии. К тому же большинство сотовых операторов любят переписывать заголовки.Основные блоки должны быть такие:
устройство/версия браузер/версия (поддерживаемые стандарты и технологии).
Первый же пример sonyericssonk530i/r6bc browser/netfront/3.3 profile/midp-2.0 configuration/cldc-1.1 как бы говорит нам, что скобки ожидать не приходится, а второй пример mozilla/5.0 (symbianos/9.4; u; series60/5.0 nokia5800d-1/21.0.025; profile/midp-2.1 configuration/cldc-1.1 ) applewebkit/413 (khtml, like gecko) safari/413 мягко намекает, что и порядок никто соблюдать не будет. Но всё же мне важно знать, что разные агенты появляются у одного и того же устройства, например nokia n95:
- mozilla/5.0 (symbianos/9.2; u; series60/3.1 nokian95/12.0.013; profile/midp-2.0 configuration/cldc-1.1 ) applewebkit/413 (khtml, like gecko) safari/413
- mozilla/5.0 (symbianos/9.2; u; series60/3.1 nokian95/31.0.017; profile/midp-2.0 configuration/cldc-1.1 ) applewebkit/413 (khtml, like gecko) safari/413 [en-us]
- mozilla/5.0 (symbianos/9.2; u; series60/3.1 nokian95/30.0.015; profile/midp-2.0 configuration/cldc-1.1 )
- mozilla/5.0 (symbianos/9.2; u; series60/3.1 nokian95_8gb/30.0.018; profile/midp-2.0 configuration/cldc-1.1 ) applewebkit/413
- mozilla/5.0 series60; nokian95;
Рецепт
Однако, как можно заметить кое какая логика есть. После слеша (/) идёт версия — динамическая часть, которая особой роли не играет. Обязательно присутствует указание на браузер. Разделение токенов с помощью пробела и/или точки с запятой.- Выбираем то, что действительно useragent:
([[(]?[a-z0-9._+;]\s?[/\-;:\\,*\s]*[)\]]?\s?)*
- Определяем токен браузера:
((iemobile|kbrowser)\s[0-9.]+)|((up(\.link)?|netfront|obigo|opera\s?(mini|mobile)?|deckit|safari|(apple)?webkit|mozilla|openwave)/[0-9\.a-z\-]+\+?)|(browser/[a-z\-0-9]+/?[0-9\.a-z\-]+)|([a-z\.-]+browser[a-z\.-]*(/[0-9\.a-z\-]+)?)
- Определяем профиль и конфигурацию:
(((profile|configuration|java(platform)?)/[a-z]+-?)|((cldc|midp|wap)[\s\-]?))[0-9\.-a-z]+
- Язык:
((?<=[\s;\[\(])[a-z]{2}[\s-][a-z]{2}(?=[\s;\]\)]))|\[([a-z]{2,3}[\-_\s]?)+\]
- Версия:
[\s;/]+(v(er)?[\s.]*)?[0-9]+\.[0-9\.]+([a-z]{1,2}[0-9\.]*)?
- Иногда указывают размеры экрана в пикселях:
[0-9]{3}x[0-9]{3}
Десерт
Мы пошли от обратного — подчистим useragent от тех токенов, определять которые мы научились.Используя те же выражения (с лёгкими изменениями) я стираю из useragent блоки один за другим (псевдокод
while useragent ismatch replace match with string.empty
). Получается остаток из неизвестных мне заранее кусков, часть которых является мусором, а какой то один — моделью. Простейшим решением стало разбиение остатка на отдельные токены — Split(' ', '/', ';')
и поиск токена с производителем. Ищем в какая часть содержит одну из следующих строк:"nokia", "motorola", "mot-", "moto-", "motorazr", "sonyericsson", "samsung", "sec-", "sgh-", "lg-", "lge", "lg", "sie-", "siemens","ipod", "iphone" ,"ipaq", "spv", "i-mate", "mobilephone", "htc", "vodafone", "palm", "rover", "gigabyte", "asus", "alcatel", "mitsu", "verizon", "apple".
Теперь из приведённых выше разных длинных useragent-ов n95 у меня остаются только nokian95 и nokian95_8gb соответственно. Вот ещё несколько примеров полных useragent-ов и результатов очистки:
- samsung-sgh-f480/f480jihh3 shp/vpp/r5 netfront/3.4 qtv5.3 smm-mms/1.2.0 profile/midp-2.0 configuration/cldc-1.1
=samsung-sgh-f480 - sonyericssonw705/r1ea browser/netfront/3.4 profile/midp-2.1 configuration/cldc-1.1 javaplatform/jp-8.4.2
=sonyericssonw705 - lg-kc910q browser/teleca-q7. 1 mms/lg-mms-v1.0/1.2 mediaplayer/lgplayer/1.0 java/asvm/1.1 profile/midp-2.1 configuration/cldc-1.1
=lg-kc910q - mozilla/5.0 (symbianos/9.3; u; series60/3.2 nokia6210navigator/03.25; profile/midp-2.1 configuration/cldc-1.1 ) applewebkit/413 (khtml, like gecko) safari/413
=nokia6210navigator - sgh-z370/1.0 netfront/3.3 profile/midp-2.0 configuration/cldc-1.1
- vodafone/1.0/sex1i/r2aa mozilla/4.0 (compatible; msie 6.0; windows ce; iemobile 7.11) up.link/6.3.1.20.0 profile/midp-2.0 configuration/cldc-1.1
=vodafone sex1i
На посошок
Помимо браузера вас может интересовать токен WAP (кратко WAP 1.0 = WML, WAP 2.0 = XHTML). Версия mmp (multimedia mobile processor) должна указывать на поддержку аудио/видео кодеков — 1.0 только аудио mp3, а 2.0 поддерживает и видео 3gp. В большей части useragent-ов указанна операционная система и версия — актуально для iPhone:ip(hone|od). *?os\s*(v(er(sion)?)?)?[\s.]*([0-9._]+|[a-z]+)
Приятного аппетита
Проверка на базе данных и подгонка (finetunning) привели к 99% результату. Это конечно явный overfitting, но это была одной из целей (максимальная точность в определённой аудитории и регионе). Кстати, вышеприведённые regex-ы более абстрактны и должны дать большую погрешность в силу своей универсальности.Заголовок запроса User-Agent-это характерная строка,позволяющая серверам и сетевым партнерам идентифицировать приложение,операционную систему,производителя и/или версию.
User-Agent заголовок запроса является характеристикой строки , которая позволяет сервера и сетевые коллеги идентификации приложения, операционную системе, поставщику и / или версии запрашивающего агента пользователя .
Предупреждение. Прочтите раздел «Обнаружение браузера с помощью пользовательского агента», чтобы узнать, почему обслуживание разных веб-страниц или служб в разных браузерах обычно является плохой идеей.
Header type | Request header |
---|---|
Запрещенное имя заголовка | no |
Syntax
User-Agent: <product> / <product-version> <comment>
Общий формат для веб-браузеров:
User-Agent: Mozilla/5.0 (<system-information>) <platform> (<platform-details>) <extensions>
Directives
- <product>
Идентификатор продукта-его название или кодовое имя разработки.
- <product-version>
Номер версии продукта.
Ноль или более комментариев,содержащих более подробную информацию.Например,информация о субпродукте.
строка Firefox UA
Дополнительные сведения о строках пользовательских агентов на основе Firefox и Gecko см. В справочнике по строкам пользовательских агентов Firefox . Строка UA Firefox разбита на 4 компонента:
Mozilla/5.0 (platform; rv:geckoversion) Gecko/geckotrail Firefox/firefoxversion
-
Mozilla/5.
— это общий токен, который говорит о том, что браузер совместим с Mozilla. По историческим причинам почти каждый браузер сегодня его отправляет. - платформа описывает родную платформу, на которой работает браузер (Windows, Mac, Linux, Android и т. д.), и является ли это мобильным телефоном. Телефоны с ОС Firefox говорят:
Mobile
— Интернет — это платформа. Обратите внимание, что платформа может состоять из несколькихтокенов;
Подробности и примеры см. ниже. - rv: geckoversion указывает версию выпуска Gecko (например, « 17.0 »). В последних версиях
браузеров geckoversion совпадает с firefoxversion . - Gecko / geckotrail указывает, что браузер основан на Gecko. (На рабочем столе geckotrail всегда является фиксированной строкой
20100101
. ) - Firefox / firefoxversion указывает, что это браузер Firefox, и предоставляет версию (например, « 17.0» ).
Examples
Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0 Mozilla/5.0 (Macintosh; Intel Mac OS X x.y; rv:42.0) Gecko/20100101 Firefox/42.0
струна Chrome UA
Строка пользовательского агента Chrome (или движков на основе Chromium/Blink) аналогична строке Firefox. Для совместимости он добавляет такие строки, как KHTML, like Gecko
и Safari
.
Examples
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36
Струна Opera UA
Браузер Opera также основан на движке Blink, поэтому он выглядит почти так же, как строка Chrome UA, но добавляет "OPR/<version>"
.
Examples
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51. 0.2704.106 Safari/537.36 OPR/38.0.2220.41
Использовались более старые выпуски Opera на базе Presto:
Opera/9.80 (Macintosh; Intel Mac OS X; U; en) Presto/2.2.15 Version/10.00 Opera/9.60 (Windows NT 6.0; U; en) Presto/2.1.1
Строка Microsoft Edge UA
Браузер Edge также основан на движке Blink. Он добавляет "Edg/<version>"
.
Examples
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36 Edg/91.0.864.59
строка Safari UA
В этом примере строка пользовательского агента — это мобильная версия Safari. В нем есть слово "Mobile"
.
Examples
Mozilla/5.0 (iPhone; CPU iPhone OS 13_5_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.1 Mobile/15E148 Safari/604.1
Строка Internet Explorer UA
Examples
Mozilla/5.0 (compatible; MSIE 9.0; Windows Phone OS 7.5; Trident/5.0; IEMobile/9. 0)
струны Crawler and bot UA
Examples
Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)
Mozilla/5.0 (compatible; YandexAccessibilityBot/3.0; +http://yandex.com/bots)
Строки UA библиотек и сетевых инструментов
Examples
curl/7.64.1
PostmanRuntime/7.26.5
Specifications
Specification |
---|
Семантика HTTP # field.user-agent |
Browser compatibility
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox для Android | Opera Android | Safari на IOS | Samsung Internet | |
User-Agent | Yes | 12 | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
See also
- Обнаружение пользователя-агента,история и контрольный список
- Ссылка на строку агента пользователя Firefox
- Обнаружение браузера с помощью агента пользователя
- Client hints
HTTP
-
Upgrade
Заголовок обновления HTTP 1. 1 (только)может быть использован для уже установленного соединения клиент/сервер по другому протоколу (через тот же транспорт Предупреждение:HTTP/2
-
Upgrade-Insecure-Requests
Заголовок HTTP Upgrade-Insecure-Requests отправляет сигнал серверу, выражая предпочтение клиента для зашифрованного и аутентифицированного ответа, что он может
-
User-Agent: Firefox
Этот документ описывает строку агента пользователя,используемую Firefox 4 и более поздними приложениями на основе Gecko 2. 0 Строка UA самого Firefox разбивается на
-
Vary
Заголовок ответа Vary HTTP описывает части сообщения запроса,помимо метода и URL,которые влияют на содержимое,оно встречается Одно и то же значение заголовка Vary
- 1
- …
- 208
- 209
- 210
- 211
- 212
- …
- 405
- Next
Список строк агента пользователя
Опубликовано: 15 мая 2022 г.
Строка агента пользователя (UA) содержится в заголовках HTTP и предназначена для идентификации устройств, запрашивающих онлайн-контент. Пользовательский агент сообщает серверу, что такое посещающее устройство (среди прочего), и эта информация может использоваться для определения того, какой контент нужно вернуть. Конечно, это требует использования решения для обнаружения устройств, которое переводит UA в понятную информацию о программном и аппаратном обеспечении.
Мы углубимся в детали и изучим, что составляет UA, и как вы можете использовать синтаксический анализ пользовательского агента в своих интересах, в нашей статье Парсинг пользовательского агента: как это работает и как его можно использовать.
Список User-Agent для различных типов устройств
Существуют миллионы комбинаций User-Agent, учитывая, что UA меняются вместе с программным и аппаратным обеспечением. Например, браузер Chrome на iPhone 6 будет представляться с использованием другого UA, чем браузер Safari на том же телефоне.
Каждый тип устройства, включая телефоны, планшеты, настольные компьютеры, может поставляться с собственным UA, позволяющим обнаруживать это устройство для любых целей. Интересно, что боты и поисковые роботы также имеют свои уникальные пользовательские агенты.
Вот список примеров User-Agent для различных типов устройств, которые могут быть обнаружены. Если вы хотите узнать больше об этих устройствах, просто скопируйте и вставьте UA в наш инструмент тестирования User-Agent. Вы увидите все свойства обнаруженного устройства.
- Пользовательские агенты Android
- Пользовательские агенты iPhone
- Пользовательские агенты MS Windows
- Пользовательские агенты планшета
- Настольные пользовательские агенты
- Пользовательские агенты телевизионной приставки
- Пользовательские агенты игровой консоли
- Пользовательские агенты ботов и сканеров
- Пользовательские агенты электронных книг
Пользовательские агенты Android
С поддержкой подсказок клиента
Mozilla/5. 0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/114.0.0.0 Mobile Safari/537.36 |
Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/114.0.0.0 Safari/537.36 |
Mozilla/5.0 (Linux; Android 10) ; K) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/114.0.0.0 Mobile Safari/537.36,gzip(gfe) |
Самсунг
Samsung Galaxy S22 5G |
---|
Mozilla/5.0 (Linux; Android 13; SM-S901B) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/112.0.0.0 Mobile Safari/537.36 |
Mozilla/5.0 (Linux; Android 13; SM-S901U) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/112.0.0.0 Mobile Safari/537.36 |
Samsung Galaxy S22 Ultra 5G | Mozilla/5. 0 (Linux; Android 13; SM-S908B) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/112.0.0.0 Mobile Safari/537.36 |
Mozilla/5.0 (Linux; Android 13; SM-S908U) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/111.0.0.0 Mobile Safari/537.36 |
Samsung Galaxy S21 5G |
Mozilla/5.0 (Linux; Android 13; SM-G991B) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/112.0.0.0 Mobile Safari/537.36 |
Mozilla/5.0 ( Linux, Android 13, SM-G991U) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/112.0.0.0 Mobile Safari/537.36 |
Samsung Galaxy S21 Ultra 5G |
Mozilla/5.0 (Linux; Android 13; SM-G998B) AppleWebKit/537.36 (KHTML, как Gecko) Chrome/112.0.0.0 Mobile Safari/537.36 | 9005 2
Mozilla/5.0 (Linux; Android 13; SM-G998U) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/112.0.0.0 Mobile Safari/537.36 |
Samsung Galaxy A53 5G | 9005 2
Mozilla/5. 0 (Linux; Android 13; SM-A536B) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/112.0.0.0 Mobile Safari/537.36 |
Mozilla/5.0 (Linux; Android 13; SM-A536U) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/112.0.0.0 Mobile Safari/537.36 |
Samsung Galaxy A51 90 069 |
Mozilla/5.0 (Linux; Android 13; SM-A515F) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/112.0.0.0 Mobile Safari/537.36 |
Mozilla/5.0 (Linux ; Android 13; SM-A515U) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/112.0.0.0 Mobile Safari/537.36 |
Samsung Galaxy S10 |
Mozilla/5.0 (Linux; Android 12; SM-G973F) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/112.0.0.0 Mobile Safari/537.36 |
Google Pixel
Google Pixel 6 |
---|
Mozilla/5. 0 (Linux; Android 13; Pixel 6) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/112.0.0.0 Mobile Safari/537.36 |
Google Pixel 6a |
Mozilla/5.0 (Linux; Android 13; Pixel 6a) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/112.0.0.0 Mobile Safari/537.36 |
Google Pixel 6 Pro |
Mozilla/5.0 (Linux; Android 13; Pixel 6 Pro) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/112.0.0.0 Mobile Safari/537.36 | Google Pixel 7 |
Mozilla/5.0 (Linux; Android 13; Pixel 7) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/112.0.0.0 Mobile Safari/537.36 |
Google Pixel 7 Pro |
Mozilla/5.0 (Linux; Android 13; Pixel 7 Pro) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/112.0.0.0 Mobile Safari/537.36 |
Motorola
Motorola Moto G Pure |
---|
Mozilla/5.0 (Linux; Android 12; moto g pure) AppleWebKit/537. 36 (KHTML, как Gecko) Chrome/112. 0.0.0 Mobile Safari/537.36 |
Motorola Moto G Stylus 5G |
Mozilla/5.0 (Linux; Android 12; moto g stylus 5G) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/112.0.0.0 Mobile Safari/537.36v |
Motorola Moto G Stylus 5G (2022) |
Mozilla/5.0 (Linux; Android 12; moto g stylus 5G (2022)) AppleWebKit/537.36 (KHTML, как Gecko) Chrome/112 .0.0.0 Mobile Safari/537.36 |
Motorola Moto G 5G (2022) |
Mozilla/5.0 (Linux; Android 12; moto g 5G (2022)) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/112.0.0.0 Mobile Safari/537.36 |
Motorola Moto G Power (2022) |
Mozilla/5.0 (Linux; Android 12; moto g power (2022)) AppleWebKit/537.36 (KHTML, как Gecko) Chrome/112.0.0.0 Mobile Safari/5 37.36 |
Motorola Moto G Power (2021) |
Mozilla/5.0 (Linux; Android 11; moto g power (2021)) AppleWebKit/537. 36 (KHTML, как Gecko) Chrome/112.0.0. 0 Mobile Safari/537.36 |
Различные популярные модели Android
Redmi Note 9 Pro |
---|
Mozilla/5.0 (Linux; Android 12; Redmi Note 9 Pro) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/112.0.0.0 Mobile Safari/537.36 |
Mozilla/5.0 (Linux; Android 11; Redmi Note 8 Pro) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/112.0.0.0 Mobile Safari/537.36 |
Huawei P30 Pro |
Mozilla/5.0 (Linux; Android 10; VOG-L29) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/112.0.0.0 Mobile Safari/537.36 |
Huawei P30 lite |
Mozilla/5.0 (Linux; Android 10; MAR-LX1A) AppleWebKit/537.36 (KHTML, как Gecko) Chrome/112.0.0.0 Mobile Safari/537.36 90 051 |
Redmi Note 10 Pro |
Mozilla/5.0 (Linux; Android 13; M2101K6G) AppleWebKit/537.36 (KHTML, как Gecko) Chrome/112. 0.0.0 Mobile Safari/537.36 9005 1 |
Xiaomi Poco X3 Pro |
Mozilla/5.0 (Linux; Android 12; M2102J20SG) AppleWebKit/537.36 (KHTML, как Gecko) Chrome/112.0.0.0 Mobile Safari/537.36 |
Redmi Note 11 Pro 5G |
Mozilla/5.0 (Linux; Android 12; 2201116SG) AppleWebKit/537.36 (KHTML, как Gecko) Chrome/112.0.0.0 Mobile Safari/537. 36 |
OnePlus Nord N200 5G |
Mozilla/5.0 (Linux; Android 12; DE2118) AppleWebKit/537.36 (KHTML, как Gecko) Chrome/112.0.0.0 Mobile Safari/537 .36 |
Если вам интересно, какие устройства наиболее распространены в вашем регионе, ознакомьтесь с нашим списком самых популярных в мире устройств Android.
Агенты пользователя iPhone
Ниже приведены примеры строк агентов пользователя, используемых наиболее популярными устройствами iPhone. Поскольку Apple не передает много информации через User Agent, номера версий не позволяют различать модели iPhone.
Однако с помощью клиентской части DeviceAtlas вы можете классифицировать эти пользовательские агенты, чтобы возвращать правильную модель устройства.
Загрузите нашу бесплатную электронную книгу по пользовательским агентам, чтобы узнать:
- Что такое пользовательский агент?
- Как их разбирать?
- Что с ними можно сделать?
Скачать бесплатное руководство
Apple iPhone SE (3-го поколения) |
---|
Mozilla/5.0 (iPhone14,6; U; CPU iPhone OS 15_4, как Mac OS X) AppleWebKit/602.1.50 (KHTML, как Gecko) Версия/10.0 Mobile/19E241 Safari/602.1 |
iPhone 13 Pro Max |
---|
Mozilla/5.0 (iPhone14,3; U; CPU iPhone OS 15_0, как Mac OS X) AppleWebKit/602.1.50 (KHTML, как Gecko) Версия/10. 0 Mobile/19A346 Safari/602.1 |
iPhone 12 |
---|
Mozilla/5.0 (iPhone13,2; U; ЦП iPhone OS 14_0, как Mac OS X) AppleWebKit/602.1.50 (KHTML, как Gecko) Версия/10.0 Mobile/15E148 Safari/602.1 |
iPhone 11 |
---|
Mozilla/5.0 (iPhone12,1; U; ЦП iPhone OS 13_0, например Mac OS X) AppleWebKit/602.1.50 (KHTML, например Gecko) Версия/10.0 Mobile/15E148 Safari/602.1 |
iPhone 11 |
---|
Mozilla/5.0 (iPhone12,1; U; ЦП iPhone OS 13_0, например Mac OS X) AppleWebKit/602.1.50 (KHTML, например Gecko) Версия/10.0 Mobile/15E148 Safari/602.1 |
Apple iPhone XR (Safari) |
---|
Mozilla/5.0 (iPhone; ЦП iPhone OS 12_0, например Mac OS X) AppleWebKit/605.1.15 (KHTML, например Gecko) Версия/12. 0 Mobile/15E148 Safari/604.1 |
Apple iPhone XS (хром) |
---|
Mozilla/5.0 (iPhone; ЦП iPhone OS 12_0, например Mac OS X) AppleWebKit/605.1.15 (KHTML, например Gecko) CriOS/69.0.3497.105 Mobile/15E148 Safari/605.1 |
Apple iPhone XS Max (Firefox) |
---|
Mozilla/5.0 (iPhone; ЦП iPhone OS 12_0, например Mac OS X) AppleWebKit/605.1.15 (KHTML, например Gecko) FxiOS/13.2b11866 Mobile/16A366 Safari/605.1.15 |
Apple iPhone X |
---|
Mozilla/5.0 (iPhone; ЦП iPhone OS 11_0, например Mac OS X) AppleWebKit/604.1.38 (KHTML, например Gecko) Версия/11.0 Mobile/15A372 Safari/604.1 |
Apple iPhone 8 |
---|
Mozilla/5.0 (iPhone; ЦП iPhone OS 11_0, например Mac OS X) AppleWebKit/604. 1.34 (KHTML, например Gecko) Version/11.0 Mobile/15A5341f Safari/604.1 |
Apple iPhone 8 Plus |
---|
Mozilla/5.0 (iPhone; ЦП iPhone OS 11_0, например Mac OS X) AppleWebKit/604.1.38 (KHTML, например Gecko) Version/11.0 Mobile/15A5370a Safari/604.1 |
Apple iPhone 7 |
---|
Mozilla/5.0 (iPhone9,3; U; ЦП iPhone OS 10_0_1, как Mac OS X) AppleWebKit/602.1.50 (KHTML, как Gecko) Версия/10.0 Mobile/14A403 Safari/602.1 |
Apple iPhone 7 Plus |
---|
Mozilla/5.0 (iPhone9,4; U; ЦП iPhone OS 10_0_1, как Mac OS X) AppleWebKit/602.1.50 (KHTML, как Gecko) Версия/10.0 Mobile/14A403 Safari/602.1 |
Apple iPhone 6 |
---|
Mozilla/5.0 (Apple-iPhone7C2/1202.466; U; ЦП как Mac OS X; en) AppleWebKit/420+ (KHTML, как Gecko) Версия/3. 0 Mobile/1A543 Safari/419.3 |
Пользовательские агенты MS Windows Phone
Microsoft Lumia 650 |
---|
Mozilla/5.0 (Windows Phone 10.0; Android 6.0.1; Microsoft; RM-1152) AppleWebkit/537,36 (KHTML, как Gecko) Chrome/52.0.2743.116 Mobile Safari/537.36 Edge/15.15259 993.116.0051 |
Майкрософт Люмия 550 |
---|
Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; RM-1127_16056) AppleWebKit/537.36 (KHTML, как Gecko) Chrome/42.0.2311.135 Mobile Safari/537.36 Edge/12.1 0536 |
Майкрософт Люмия 950 |
---|
Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 950) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/46.0.2486.0 Mobile Safari/537.36 Edge/13.1058 |
Пользовательские агенты планшета
Samsung Galaxy Tab S8 Ultra |
---|
Mozilla/5. 0 (Linux; Android 12; SM-X906C Build/QP1A.1 .020; wv) AppleWebKit/537.36 (KHTML, как Gecko) Версия/4.0 Chrome/80.0.3987.119 Mobile Safari/5 37.36 |
Вкладка Lenovo Yoga 11 |
---|
Mozilla/5.0 (Linux; Android 11; Lenovo YT-J706X) AppleWebKit/537.36 (KHTML, как Gecko) Chrome/96.0.4664.45 Сафари/537.36 |
Пиксель Google C |
---|
Mozilla/5.0 (Linux; Android 7.0; Pixel C Build/NRD90M; wv) AppleWebKit/537.36 (KHTML, например Gecko) Version/4.0 Chrome/52.0.2743.98 Safari/537.36 |
Планшет Sony Xperia Z4 |
---|
Mozilla/5.0 (Linux; Android 6.0.1; SGP771 Build/32.2.A.0.253; wv) AppleWebKit/537.36 (KHTML, как Gecko) Version/4.0 Chrome/52.0.2743.98 Сафари/537.36 |
Планшет Nvidia Shield K1 |
---|
Mozilla/5. 0 (Linux; Android 6.0.1; SHIELD Tablet K1 Build/MRA58K; wv) AppleWebKit/537.36 (KHTML, как Gecko) Version/4.0 Chrome/55.0.2883.91 Safari/537.36 900 51 |
Вкладка Samsung Galaxy S3 |
---|
Mozilla/5.0 (Linux; Android 7.0; SM-T827R4 Build/NRD90M) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/60.0.3112.116 Safari/537.36 |
Вкладка Samsung Galaxy A |
---|
Mozilla/5.0 (Linux; Android 5.0.2; SAMSUNG SM-T550 Build/LRX22G) AppleWebKit/537.36 (KHTML, как Gecko) SamsungBrowser/3.3 Chrome/38.0.2125.102 Safari/537.36 |
Amazon Kindle Fire HDX 7 |
---|
Mozilla/5.0 (Linux; Android 4.4.3; сборка KFTHWI/KTU84M) AppleWebKit/537.36 (KHTML, как Gecko) Silk/47.1.79например Chrome/47.0.2526.80 Safari/537.36 |
LG G Pad 7. 0 |
---|
Mozilla/5.0 (Linux; Android 5.0.2; LG-V410/V41020c Build/LRX22G) AppleWebKit/537.36 (KHTML, как Gecko) Version/4.0 Chrome/34.0.1847.118 Safari/537.36 |
Если вам нужен список пользовательских агентов мобильных браузеров, они у нас тоже есть — Список строк пользовательских агентов мобильных браузеров.
Настольные пользовательские агенты
ПК на базе Windows 10 с браузером Edge |
---|
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.246 |
Ноутбук на базе Chrome OS с браузером Chrome (Chromebook) |
---|
Mozilla/5.0 (X11; CrOS x86_64 8172.45.0) AppleWebKit/537.36 (KHTML, как Gecko) Chrome/51.0.2704.64 Safari/537.36 |
Компьютер на базе Mac OS X с браузером Safari |
---|
Mozilla/5. 0 (Macintosh; Intel Mac OS X 10_11_2) AppleWebKit/601.3.9 (KHTML, как Gecko) Version/9.0.2 Safari/601.3.9 |
ПК на базе Windows 7 с браузером Chrome |
---|
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/47.0.2526.111 Safari/537.36 |
ПК на базе Linux с браузером Firefox |
---|
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:15.0) Gecko/20100101 Firefox/15.0.1 |
Для Интернета, нативных приложений и сред операторов мобильной связи.
Сравнение вариантов и цен
Агенты пользователя для приставок
Google ADT-2 |
---|
Dalvik/2.1.0 (Linux; U; Android 9; ADT-2 Build/PTT5. 181126.002) |
Chromecast |
---|
Mozilla/5.0 (CrKey armv7l 1.5.16041) AppleWebKit/537.36 (KHTML, как Gecko) Chrome/31.0.1650.0 Safari/537.36 |
Року Ультра |
---|
Roku4640X/DVP-7.70 (297.70E04154A) |
Миникс NEO X5 |
---|
Mozilla/5.0 (Linux; U; Android 4.2.2; he-il; NEO-X5-116A Build/JDQ39) AppleWebKit/534.30 (KHTML, как Gecko) Version/4.0 Safari/534.30 |
Амазон AFTWMST22 |
---|
Mozilla/5.0 (Linux; Android 9; AFTWMST22 Build/PS7233; wv) AppleWebKit/537.36 (KHTML, как Gecko) Version/4.0 Chrome/88.0.4324.152 Mobile Safari/537.36 |
Amazon 4K Fire TV |
---|
Mozilla/5.0 (Linux; Android 5. 1; AFTS Build/LMY47O) AppleWebKit/537.36 (KHTML, например, Gecko) Версия/4.0 Chrome/41.99900.2250.0242 Safari/537.36 |
Плеер Google Nexus |
---|
Dalvik/2.1.0 (Linux; U; Android 6.0.1; Nexus Player Build/MMB29T) |
Apple TV 6-го поколения 4K |
---|
AppleTV11,1/11.1 |
Apple TV 5-го поколения 4K |
---|
AppleTV6,2/11.1 |
Apple TV 4-го поколения |
---|
AppleTV5,3/9.1.1 |
Пользовательские агенты игровых консолей
Playstation 5 |
---|
Mozilla/5.0 (PlayStation; PlayStation 5/2.26) AppleWebKit/605.1.15 (KHTML, например Gecko) Version/13.0 Safari/605.1.15 |
Playstation 4 |
---|
Mozilla/5. 0 (PlayStation 4 3.11) AppleWebKit/537.73 (KHTML, как Gecko) |
Playstation Vita |
---|
Mozilla/5.0 (PlayStation Vita 3.61) AppleWebKit/537.73 (KHTML, как Gecko) Silk/3.2 |
Xbox Series X |
---|
Mozilla/5.0 (Windows NT 10.0; Win64; x64; Xbox; Xbox Series X) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/48.0.2564.82 Safari/537.36 Edge/20.02 |
Xbox One S |
---|
Mozilla/5.0 (Windows NT 10.0; Win64; x64; XBOX_ONE_ED) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/51.0.2704.79 Safari/537.36 Edge/14.14393 |
Xbox One |
---|
Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Xbox; Xbox One) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/46.0.2486.0 Mobile Safari/537. 36 Edge/13.10586 |
Nintendo Switch |
---|
Mozilla/5.0 (Nintendo Switch; WifiWebAuthApplet) AppleWebKit/601.6 (KHTML, как Gecko) NF/4.0.0.5.10 NintendoBrowser/5.1.0.13343 |
Nintendo Wii U |
---|
Mozilla/5.0 (Nintendo WiiU) AppleWebKit/536.30 (KHTML, например Gecko) NX/3.0.4.2.12 NintendoBrowser/4.3.1.11264.US |
Нинтендо 3DS |
---|
Mozilla/5.0 (Nintendo 3DS; U; ; en) Version/1.7412.EU |
Пользовательские агенты ботов и сканеров
Мы составили более подробный список строк User-Agent наиболее активных веб-сканеров и ботов.
Бот Google |
---|
Mozilla/5.0 (совместимый; Googlebot/2.1; +http://www.google.com/bot.html) |
Бот Бинг |
---|
Mozilla/5. 0 (совместимо; bingbot/2.0; +http://www.bing.com/bingbot.htm) |
Yahoo! бот |
---|
Mozilla/5.0 (совместимо; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp) |
Пользовательские агенты для электронных книг
Amazon Kindle 4 |
---|
Mozilla/5.0 (X11; U; Linux armv7l, как Android; en-us) AppleWebKit/531.2+ (KHTML, например Gecko) Версия/5.0 Safari/533.2+ Kindle/3.0+ |
Amazon Kindle 3 |
---|
Mozilla/5.0 (Linux; U; en-US) AppleWebKit/528.5+ (KHTML, как Gecko, Safari/528.5+) Version/4.0 Kindle/3.0 (экран 600×800; поворот) |
Узнайте больше о User-Agents
Если вам нужна дополнительная информация о User-Agents, обязательно прочитайте следующие сообщения в блоге DeviceAtlas:
- Как работает анализ User-Agent и как его можно использовать
- Список агентов пользователя мобильного браузера
- Анализ строки User-Agent
- Создание баз данных устройств с помощью строк User-Agent
- Как переключить UA в настольном браузере
HTTP-заголовок User-Agent: синтаксис, директива, примеры
от Holistic SEO
HTTP-заголовок User-Agent — это заголовок запроса, содержащий строку, идентифицирующую операционную систему и браузер, используемые веб-сервером. HTTP-заголовок User-Agent содержит строку User-Agent. Заголовок запроса User-Agent — это уникальная строка, которая позволяет серверам и одноранговым узлам сети идентифицировать запрашивающее приложение пользовательского агента, операционную систему, поставщика и/или версию. HTTP-заголовок User-Agent имеет несколько значений. <версия продукта> и комментарий> <обязательны>. Значение синтаксиса HTTP-заголовка User-Agent используется для идентификации приложения, операционной системы, поставщика и версии пользовательского агента запроса. Пример HTTP-заголовка User-Agent показан ниже.
User-Agent: Mozilla/5.0 (<информация о системе>)(<сведения о платформе>)
Заголовок запроса HTTP-заголовка User-Agent показан выше. В статье будут обработаны синтаксис HTTP-заголовка User-Agent, директивы и использование с примерами.
HTTP-заголовок User-Agent — это заголовок, содержащий строку, сообщающую веб-серверу, какая у него операционная система и браузер. Используйте заголовок запроса User-Agent, чтобы сообщить серверам и другим пользователям сети, какое программное обеспечение, операционную систему, поставщика или версию программного обеспечения вы используете. Целью HTTP-заголовка User-Agent является создание журнала доступа со всеми запросами к серверу.
Заголовок HTTP User-Agent состоит из трех частей по своему синтаксису. Синтаксис использования HTTP-заголовка User-Agent описан ниже.
User-Agent:/
Существует несколько директив, которые можно поместить в HTTP-заголовок User-Agent. Директивы по использованию HTTP-заголовка User-Agent приведены ниже.
<продукт>
Уникальная идентификация продукта, например его имя или кодовое имя разработки.
<версия продукта>
Номер версии продукта можно найти здесь.
<комментарий>
Нет или более комментариев, содержащих дополнительную информацию. Например, информация о субпродуктах.
HTTP-заголовок User-Agent используется для идентификации операционной системы веб-сервера и браузера, а также для того, чтобы одноранговые узлы сетевого протокола могли идентифицировать веб-сервер. Каждый веб-сайт, который посещает пользователь, получает HTTP-заголовок User-Agent, который отправляется браузером. Строка пользовательского агента не записывается стандартизированным образом, потому что разные веб-браузеры используют разные форматы, и многие веб-браузеры загружают большой объем информации в свои пользовательские агенты. Поле заголовка HTTP User-Agent включается в заголовок HTTP для веб-сайта, когда браузер пользователя устанавливает соединение с веб-сайтом. Информация, содержащаяся в области заголовка, отличается от браузера к браузеру. Информация используется для обслуживания различных веб-сайтов в различных веб-браузерах и операционных системах на основе информации, полученной от них.
Примеры использования User-Agent
HTTP-заголовок User-Agent имеет разные примеры использования разных веб-браузеров. Ниже приведен пример использования HTTP-заголовка User-Agent.
Строка UA Firefox
Mozilla/5.0 (платформа; rv:geckoversion) Gecko/geckotrail Firefox/firefoxversion
Строка UA Chrome
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 ( KHTML, например Gecko) Chrome/51.0.2704.103 Safari/537.36
Opera UA string
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/51.0.2704.106 Safari/537.36 OPR/38.0.2220.41
Строка UA Microsoft Edge
Mozilla /5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/91.0.4472.124 Safari/537.36 Edg/91.0.864.59
Safari Строка UA
Mozilla/5.0 (iPhone; CPU iPhone OS 13_5_1 как Mac OS X) AppleWebKit/605.1.15 (KHTML, как Gecko) Version/13.1.1 Mobile/15E148 Safari/604.1
Строка UA для Internet Explorer
Mozilla/5. 0 (совместимая; MSIE 9.0; ОС Windows Phone 7.5; Trident/5.0; IEMobile/9.0)
Строки UA сканера и бота
Mozilla/5.0 (совместимая; Googlebot/2.1; +http ://www.google.com/bot.html)
Библиотека и сетевой инструмент Строки UA
curl/7.64.1 PostmanRuntime/7.26.5
Существует только один документ спецификации для HTTP-заголовка User-Agent, которым является протокол передачи гипертекста (HTTP/1.1): семантика и содержимое. Протокол передачи гипертекста (HTTP/1.1): семантика и содержание. В статье 5.5.3 упоминается определение и использование HTTP-заголовка User-Agent. Кроме того, в этой статье обсуждаются примеры и значения HTTP-заголовка User-Agent.
HTTP-заголовок User-Agent. Тип HTTP-заголовка для User-Agent HTTP-заголовка — это заголовки запроса, поскольку они содержат информацию об операционной системе и браузере, определяемую строкой, используемой веб-сервером.
Заголовки HTTP, аналогичные заголовку HTTP User-Agent, перечислены ниже.
- Ссылки на строку пользовательского агента Firefox: Строка пользовательского агента Firefox указывает строку пользовательского агента, которая используется в Firefox 4 и более поздних версиях, а также в приложениях, построенных на Gecko 2.0 или более поздних версиях.
- Обнаружение браузера с помощью пользовательского агента: HTTP-заголовок User-Agent используется для идентификации браузера. Как правило, не рекомендуется обслуживать отдельные веб-страницы или службы для разных типов браузеров. Независимо от того, какой браузер или гаджет кто-то использует, Интернет должен быть доступен для всех. Существуют методы разработки вашего веб-сайта, чтобы он постепенно улучшался в зависимости от наличия функций, а не за счет ориентации на определенные браузеры или операционные системы.
Существует несколько браузеров, поддерживающих HTTP-заголовок User-Agent. Ниже перечислены следующие браузеры.
- Браузер Chrome совместим с HTTP-заголовком User-Agent
- Браузер Edge совместим с HTTP-заголовком User-Agent
- Браузер Firefox совместим с HTTP-заголовком User-Agent
- Браузер Internet Explorer совместим с HTTP-заголовком User-Agent
- Браузер Opera совместим с HTTP-заголовком User-Agent
- Браузер Safari совместим с заголовком HTTP User-Agent
- Браузер WebView Android совместим с заголовком HTTP User-Agent
- Браузер Chrome Android совместим с заголовком HTTP User-Agent
- Браузер Firefox Android совместим с заголовком HTTP User-Agent 9002 1 Браузер Opera Android совместим с заголовком HTTP User-Agent
- Браузер Safari IOS совместим с заголовком HTTP User-Agent
- Интернет-браузер Samsung совместим с заголовком HTTP User-Agent
Вы можете увидеть изображение, которое показывает кросс-браузерную совместимость HTTP-заголовков User-Agent ниже.