ToolActToolAct

UA-парсер

Онлайн-анализ строк User-Agent для определения браузера, ОС и информации об устройстве

User-Agent
Символов: 0

Результаты анализа

Вставьте строку User-Agent сюда...

Что такое User-Agent?

User-Agent Parser разбирает строку User-Agent на понятные сведения: браузер, операционную систему, тип устройства, rendering engine и иногда признаки bot или client hints. Такие строки встречаются в логах, аналитике, обращениях поддержки, тестах совместимости и расследованиях безопасности, потому что показывают, каким клиентом был сделан запрос. Но это не надежный сигнал идентичности: User-Agent можно подделать, сократить, изменить ради приватности, заморозить или дополнить современными Client Hints. Инструмент полезен для быстрого чтения и сравнения, но не должен быть единственной основой для прав, antifraud, персонализации или критичного таргетинга устройств. Для точности нужны логи, feature detection и клиентские проверки.

Как пользоваться

Как пользоваться

  1. Вставьте строку User-Agent для разбора в поле ввода
  2. Или нажмите «Разобрать мой UA», чтобы автоматически определить UA текущего браузера
  3. Результаты разбора отобразятся ниже: сведения о браузере, системе и устройстве
  4. Нажмите «Копировать UA», чтобы скопировать исходную строку UA

Ограничения разбора

  • Строки User-Agent могут быть подделаны, заморожены или сокращены современными браузерами, поэтому воспринимайте результаты разбора как ориентир.
  • При принятии решений о поддержке функций по возможности отдавайте предпочтение определению возможностей, а не проверке имени браузера.

Применение

Анализ неизвестного User-Agent из тикета поддержкиВставьте строку User-Agent, скопированную из логов сервера, DevTools или панели аналитики, и получите разбивку по браузеру, ОС, устройству и движку рендеринга. Это самый быстрый способ начать расследование совместимости, когда клиент сообщает о проблеме с раскладкой, шрифтом или функцией, а у вас есть только сырая строка UA. Сверьте версию движка с результатами feature detection, чтобы исключить подделанные или замороженные значения.
Проверка собственного UA браузера на соответствие стандартамДействие «Анализировать мой UA» заполняет поле ввода значением navigator.userAgent и сразу парсит его. Сравните результат с Sec-CH-UA, замороженными/сокращёнными списками UA, публикуемыми крупными браузерами, и вашей логикой feature detection, чтобы убедиться, что сегментация аналитики и фильтрация функций соответствуют реальным возможностям клиента. Несовпадение между распарсенным UA и feature detection обычно является первым признаком политики сокращения UA.
Выявление ботов и краулеровПомимо библиотечного парсинга, инструмент проверяет типичные паттерны ботов: bot, crawler, spider, Googlebot, Bingbot, Baiduspider, YandexBot, DuckDuckBot, facebot, ia_archiver. Поле bot упрощает идентификацию автоматического трафика. Дополняйте флаг бота серверными лимитами частоты запросов, поскольку обнаружение по ключевым словам можно обойти, если скрейпер имитирует UA реального браузера.
Сравнение двух строк User-AgentВставьте UA десктопного Chrome и мобильного Safari, затем сопоставьте поля движка, ОС и типа устройства бок о бок, чтобы понять, почему адаптивная ветка срабатывает на одном клиенте, но не на другом. Тот же подход выявляет замороженные или сокращённые UA-строки Chromium-браузеров с пустым сегментом версии. Параллельное сравнение часто быстрее, чем повторный запуск одной страницы на двух устройствах для подтверждения регрессии раскладки.
Определение сокращения Chrome, Client Hints и мобильных токеновСовременный Chrome 100+ поставляет сокращённую строку UA, в которой минорная версия заморожена на 0.0.0, а реальные данные о версии перенесены в Sec-CH-UA-Full-Version-List; сверяйте распарсенную мажорную версию с заголовками Client Hints, чтобы отследить сокращение. Определение мобильных устройств опирается на ключевые слова (iPhone, Android, Mobile), а не на размер экрана, и современные Client Hints предоставляют более надёжный булев Sec-CH-UA-Mobile, чем сама строка UA. Всегда комбинируйте парсинг UA с Client Hints и feature detection, прежде чем принимать решение о классе устройства.

Технический принцип

Заголовок User-Agent определён в RFC 7231 §5.5.3 как последовательность продуктовых токенов (продукт/версия) и комментариев в скобках, но на практике каждый современный браузер отправляет строку, начинающуюся с литерала Mozilla/5.0. Этот префикс восходит к 1993 году, когда сайты определяли NCSA Mosaic по наличию «Mozilla»; Netscape принял Mozilla, Internet Explorer 3 добавил его для совместимости, и каждое последующее ответвление (Safari, Chrome, Edge, Opera) сохранило эту условность. Не существует формальной грамматики, определяющей, где располагается ОС, куда идёт версия движка и какой токен побеждает, когда несколько браузеров перечисляют друг друга ради совместимости, поэтому разбор выполняется с помощью приоритизированного списка регулярных выражений по четырём классическим осям: браузер, движок, ОС, устройство. Библиотеки с открытым исходным кодом, такие как ua-parser-js, bowser и порты UAParser на Lua/Python, используют одни и те же файлы паттернов. С 2022 года Chrome внедряет сокращение UA: версия браузера замораживается на MAJOR.0.0.0, а платформо-специфичные минорные токены удаляются, поэтому распарсенный Chrome 120.0.0.0 на Windows на самом деле означает Chrome 120-что-то на Windows 10 или 11, а точная сборка скрыта за Client Hints. Современная замена — User-Agent Client Hints (draft-ietf-httpbis-client-hints), которые предоставляют Sec-CH-UA, Sec-CH-UA-Mobile и Sec-CH-UA-Platform при каждом запросе, а значения с высокой энтропией (модель, полная версия, архитектура) — через navigator.userAgentData.getHighEntropyValues(). UA-парсер по-прежнему полезен для анализа логов и выявления ботов, но определение возможностей и Client Hints должны определять любую логику ветвления во время выполнения.

  • RFC 7231 §5.5.3 определяет User-Agent как продуктовые токены плюс комментарии, без грамматики для ОС или устройства — каждый парсер использует свой список регулярных выражений.
  • Префикс Mozilla/5.0 — это хак совместимости 1993 года из эпохи Mosaic; Safari, Chrome и Edge сохраняют его, чтобы не ломать сайты с определением браузера.
  • Сокращение Chrome UA (внедрялось в 2022–2023 гг.) замораживает минорную версию на 0.0.0 и фиксирует строку платформы — реальные номера сборок находятся в Sec-CH-UA-Full-Version-List.
  • User-Agent Client Hints предоставляют Sec-CH-UA, Sec-CH-UA-Mobile, Sec-CH-UA-Platform при каждом запросе; поля с высокой энтропией требуют navigator.userAgentData.getHighEntropyValues(['model','platformVersion','architecture']).
  • Обнаружение ботов по ключевым словам (bot, crawler, spider, Googlebot, Bingbot, Baiduspider, YandexBot) выявляет вежливых краулеров, но не скрейперов-нарушителей, копирующих настоящий Chrome UA — комбинируйте с лимитами частоты запросов и поведенческими сигналами.
  • Определение мобильного устройства или планшета основывается на токенах (Mobile, Tablet, iPhone, iPad), а не на размере экрана; Android UA без токена Mobile рассматривается большинством парсеров как планшет.
  • Кэши и CDN, использующие Vary: User-Agent, могут разбить один ресурс на тысячи кэш-записей — предпочитайте Vary: Sec-CH-UA-Mobile или миритесь с низким процентом попаданий.

Примеры

Браузер Chrome

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 Chrome/120.0.0.0 Safari/537.36

Safari на iPhone

Mozilla/5.0 (iPhone; CPU iPhone OS 17_0 like Mac OS X) AppleWebKit/605.1.15 Version/17.0 Mobile/15E148 Safari/604.1

Google Bot

Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)

Часто задаваемые вопросы

Что извлекает разбор User-Agent?

Название и версию браузера (например, «Chrome 124»), операционную систему и её версию, тип устройства (десктоп/мобильный/планшет), архитектуру CPU, движок рендеринга (Blink/Gecko/WebKit) и классификацию ботов/краулеров, если UA соответствует известному шаблону.

Насколько точен разбор UA?

Хорошо работает для распространённых, известных браузеров. Сложности возникают с: совершенно новыми версиями до обновления библиотеки парсера; браузерами, имитирующими Chrome/Safari ради обхода детекции; ботами, подделывающими UA реального браузера; встроенными WebView, в которых UA указывает на хост-приложение, а не на движок.

Почему строка User-Agent стала менее полезной?

Производители браузеров (во главе с Chrome) «замораживают» строки UA, чтобы ограничить fingerprinting, и продвигают UA Client Hints (заголовки Sec-CH-UA-*). Через несколько лет строки UA будут возвращать стабильные, низкоэнтропийные значения, а реальные данные об устройстве — жить в client hints. Код стоит миграционно перевести на них.

Стоит ли использовать UA-детекцию для feature gating?

Почти никогда. UA может врать, а поддержка возможностей различается даже между версиями одного браузера. Используйте feature-detection в стиле `if ('serviceWorker' in navigator)`. UA-детекция допустима для аналитики, тикетов поддержки и классификации баг-репортов — но не для выбора API.

Можно ли разобрать собственный UA?

Да. Страница показывает текущий UA вашего браузера сверху и разбирает его на компоненты. Удобно, когда нужно точно знать, какую версию ваш браузер сообщает серверам.

Как насчёт детекции ботов?

Парсер помечает добропорядочных ботов, которые сами себя идентифицируют (Googlebot, Bingbot, Slackbot). Вредоносные боты обычно выдают себя за реальные браузеры, поэтому детекция только по UA — слабая защита. Для реальной защиты сочетайте с rate limit, CAPTCHA и поведенческими сигналами.

Загружается ли UA куда-либо?

Нет. Разбор выполняется в браузере JS-библиотекой (обычно ua-parser-js). Вставленные строки UA не отправляются на сервер.

Связанные инструменты

Инструмент поиска IP-адреса

Бесплатный онлайн-инструмент для определения вашего публичного IP-адреса и геолокации: страна, город и провайдер. Узнайте свой IP мгновенно в браузере.

Инструмент проверки системы

Бесплатный онлайн-инструмент проверки системы. Определите ОС, браузер, разрешение экрана, конфигурацию оборудования и состояние сети. Локальная обработка.

Запрос HTTP-кодов состояния

Бесплатный онлайн-справочник кодов состояния HTTP: все стандартные коды от 1xx до 5xx с описанием. Поиск и фильтр по категориям для быстрого поиска кода.

Инструмент тестирования регулярных выражений

Бесплатный онлайн-тестер регулярных выражений с мгновенным сопоставлением и подсветкой совпадений. Отлаживайте и проверяйте regex на ваших примерах.

Инструмент форматирования JSON

Онлайн-инструмент для форматирования JSON с подсветкой синтаксиса, обнаружением ошибок и сжатием. Одним нажатием форматируйте JSON данные, быстро находите ошибки формата.

Whois запрос

Бесплатный онлайн-инструмент Whois для доменов. Проверьте информацию о регистрации домена, срок действия, DNS-серверы, регистратор. Поддержка глобальных доменных расширений, защита приватности в браузере.