Про user-agent. Что это и зачем? Для начинающего тестировщика. 2023
Как «обмануть» браузер и протестировать с других устройств веб приложение? Варианты есть разные и предлагаю рассмотреть user agent для данной деятельности.
❤Поставь лайк полезному материалу и дочитай до конца.
User-Agent — это строка, которую ваш браузер отправляет на сервер при запросе веб-страницы, и она содержит информацию о вашей операционной системе, браузере и его версии, а также другие данные, такие как тип устройства и язык. Веб-сервер использует эту информацию для того, чтобы предоставить вам оптимизированную версию веб-страницы для вашего устройства и браузера.
Найти его можно во вкладке Network перейдя по любому запросу.
User-agent может использоваться для:
- Определения типа устройства и настройки веб-страницы для наилучшего отображения на экране устройства.
- Определения возможностей браузера и включения или отключения функций веб-страницы в зависимости от них.
- Сбора статистики посещаемости веб-сайта и анализа поведения пользователей в зависимости от типа браузера и устройства.
- Предотвращения злоупотребления доступом к веб-серверу и защиты от вредоносных программ.
- Улучшения качества сервиса и удобства использования веб-приложений.
Есть много полезных приложений, которые могут в этом помочь, например:
- User-Agent Switcher and Manager,
- User-Agent Switcher for Chrome
По сути это расширения для браузера, которое позволяет изменять User-Agent, который отправляется вашим браузером при запросе веб-страницы.
Они позволяют вам изменить User-Agent, который отправляется серверу, чтобы вы могли посмотреть, как выглядит веб-страница на разных устройствах или браузерах.
Пример панели из одного приложения
Например, вы можете использовать User-Agent Switcher, чтобы проверить, как выглядит ваш сайт на мобильном устройстве или на другом браузере, таком как Firefox или Safari. Это может быть полезно для разработчиков веб-сайтов и приложений, чтобы убедиться, что их продукты выглядят и работают корректно на разных устройствах и браузерах.
Особенности работы с User-agent
Индексация содержимого страниц сайта поисковыми системами происходит при помощи различных поисковых роботов. Все они проводят на сайте определенное время. Поэтому важно, чтобы была проиндексирована вся нужная информация, которая может привлечь посетителей.
Если сайт состоит из большого количества страниц, то целесообразно скрыть от внимания ботов ту информацию, которая не является целью первоначального запроса при поиске информации по теме сайта в интернете. Также на период внесения изменений в тексты или оформление сайта можно скрыть его весь или отдельные страницы от поисковиков. Для того чтобы это сделать, нужно отредактировать файл Robots.txt, расположенный в корневой директории сайта. В нем прописываются строки User-agent – директив, которые задают инструкции ботам поисковых систем при работе с сайтом. Именно их нужно менять, чтобы управлять индексацией.
Что из себя представляет User-agent?
User-agent есть в любом браузере и мобильном устройстве. Эта строка содержит множество сведений о компьютере, операционной системе, версии браузера. Прописанные в файле Robots.txt, строки с описанием User-agent влияют на работу поисковых систем на сайте. С их помощью можно скрыть от поисковиков (от всех или каких-то определённых) находящуюся на сайте информацию – какую-то страницу или весь сайт, конкретный тип файлов. Ограничивая индексацию по типу файлов, к примеру, можно сделать видимыми только картинки, только тексты или, наоборот, исключить из индексации конкретный тип файла.
Ограничение видимости можно прописать для бота конкретной поисковой системы или для всех роботов. Инструкции прописываются для каждого робота, для которого известно написание User-agent.
Из строки, содержащей описание User-agent можно узнать следующие сведения:
- Наименование основного браузера, его версию;
- Версию операционной системы;
- Какое специфическое программное обеспечение установлено на устройстве;
- Вид устройства, с которого осуществляется выход в интернет.
Изменение User-agent может понадобиться не только для того чтобы редактировать параметры индексации сайта, но и чтобы скрывать нежелательную для отслеживания информацию: например, вид устройства для аккаунтов Google, VK. Также с помощью редактирования User-agent можно сделать актуальным устаревший браузер, перестать получать предложения об установке того или иного браузера. Изменение данной строки в разных браузерах и устройствах происходит по-своему. Следует искать инструкции для конкретного браузера или типа операционной системы (Android, iOS).
User-agent и поисковые роботы Google
Одной из самых популярных поисковых систем является Google, и этой системой создано множество ботов для индексации различного контента на сайтах и устройств, с которых осуществляется выход в интернет.
Некоторые боты системы:
- APIs-Google – робот для рассылки push-уведомлений;
- AdSense – распознает содержание сайта для размещения соответствующих тематике объявлений;
- AdsBot Mobile Web Android, Mobile Apps Android, AdsBot-Google и AdsBot Mobile Web – для проверки рекламного контента, размещенного на сканируемом портале. Каждый из ботов отвечает за свои устройства – компьютеры, телефоны на IOS или Android, мобильные приложения;
- Googlebot Images – сканирует файлы, являющиеся изображением;
- Googlebot News – ищет информацию для размещения в новостном разделе системы;
- Googlebot Video – отвечает за видеофайлы;
- Googlebot.
Основной робот для поисковика Google – это Googlebot. В случае необходимости полной блокировки индексации всего сайта для этой системы, достаточно внести в файл Robots.txt условие, устанавливающее Googlebot агентом пользователя. Тогда для всех ботов компании Google сайт станет невидимым. Можно ограничить видимость определенного контента. Тогда нужно настроить правило для агента, отвечающего за этот контент. Например, сканированием изображений на сайте занимается Googlebot-Image. Запись в файле Robots, где оформляется данная операция, выглядит так:
Disallow: (здесь остается пустое место, так как основному боту ничего не запрещается)
Disallow: /personal (запрет на видимость изображений в личном каталоге для бота, ответственного за контент данного типа).
Можно запретить индексацию всего сайта, но разрешить индексировать конкретный контент, например, видео или размещенную рекламу. К примеру, чтобы разрешить сканировать только видео, основному боту нужно запретить индексацию всего сайта, а в качестве агента, для которого запретов не предусмотрено, указать Googlebot Video.
Если сайт должен быть виден поисковой системе Google полностью, без исключений, то файл Robots.txt не нужен, его можно вовсе удалить (при условии, что не нужно ограничить какой-либо другой поисковик).
Списки User-agent
Чтобы просмотреть список User-agent поисковой системы, достаточно перейти в соответствующий раздел ее сайта в интернете.
Списки строк агента пользователя для всех ботов Google можно найти на официальной странице ресурса в разделе «Поисковые роботы Google». Там находится подробная таблица с описанием ботов, их назначения, строками User-agent для каждого из них и инструкциями по прописыванию правил доступа в robots.txt и метатегах.
Основным поисковым ботом Яндекса является Yandex, для Yahoo! это Slurp, Рамблер запускает по Сети бота StackRambler, у Мэйл.ру функцию основного робота выполняет Mail.Ru. обычно крупные поисковики имеют нескольких роботов, перечень которых должен быть на их сайте с указанием полных строк агентов пользователя.
Если специальных настроек видимости для роботов поисковых систем на сайте не требуется, то можно удалить файл robots.txt и тогда сайт компании будет полностью сканироваться всеми роботами, если какие-либо другие параметры не помешают индексации.
User-Agent
Заголовок запроса User-Agent — это строка с характеристиками, по которым сервера и сетевые узлы могут определить тип приложения, операционную систему, производителя и/или версию пользовательского агента.
Обратите внимание: Показывать ту или иную страницу в зависимости от характеристик пользовательского агента — дурная практика. Почему не стоит так делать, читайте в статье «Определение браузера по пользовательскому агенту (en-US) ».
Тип заголовка | Заголовок запроса |
---|---|
Запрещённое имя заголовка | Нет |
Синтаксис
User-Agent: /
Общий формат для веб-браузеров:
User-Agent: Mozilla/5.0 () ()
Директивы
Идентификатор продукта — его название или кодовое имя.
Может быть пустым или содержать дополнительную информацию. Например, информацию о продукте.
Строка UA в Firefox
Подробные сведения о user agent строках в Firefox и других браузерах, основанных на движке Gecko, вы найдёте в справочнике (en-US) .
Строка UA в Firefox разбита на 4 части и одну общую метку для всех:
Mozilla/5.0 (platform; rv:geckoversion) Gecko/geckotrail Firefox/firefoxversion
- Mozilla/5.0 — общая метка, которая сообщает, что браузер совместим с Mozilla. По историческим причинам сегодня такую метку отправляет почти каждый браузер.
- platform указывает платформу, на которой работает браузер (Windows, Mac, Linux, Android и т.д.), а так же, мобильный ли это телефон. В телефонах на Firefox OS (en-US) указывается только Mobile , поскольку Firefox OS построена на веб-технологиях. Обратите внимание, platform может содержать несколько значений, разделённых ; . Подробная информация и примеры ниже.
- rv:geckoversion указывает релизную версию Gecko (например, «17.0«). В последних браузерах geckoversion совпадает с firefoxversion.
- Gecko/geckotrail указывает, что браузер основан на Gecko (на компьютерах geckotrail — всегда строка 20100101 ).
- Firefox/firefoxversion обозначает, что браузером является Firefox, и указывает его версию (например, «17.0«).
Примеры
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
Строка UA в Chrome
Строка user agent в Chrome и браузерах, основанных на движке Chromium/Blink, аналогична строке Firefox. Для совместимости добавлены строки KHTML, like Gecko и Safari .
Примеры
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36
Строка UA в Opera
Браузер Opera также основан на движке Blink, поэтому его строка user agent совпадает со строкой Chrome, только в конце добавляется «OPR/» .
Примеры
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
Строка UA в Microsoft Edge
Браузер Microsoft Edge также основан на движке Blink, поэтому его строка user agent совпадает со строкой Chrome, только в конце добавляется «Edg/» .
Примеры
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
Строка UA в Safari
В этом примере строка user agent представлена в мобильной версии Safari и содержит слово «Mobile» .
Примеры
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
Строка UA в Internet Explorer
Примеры
Mozilla/5.0 (compatible; MSIE 9.0; Windows Phone OS 7.5; Trident/5.0; IEMobile/9.0)
Строка UA поискового робота
Примеры
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 у библиотек и net-tools
Примеры
curl/7.64.1
PostmanRuntime/7.26.5
Cпецификации
Specification |
---|
HTTP Semantics # field.user-agent |
Совместимость с браузерами
BCD tables only load in the browser
Смотрите также
- User-Agent detection, history and checklist
- Firefox user agent string reference (en-US)
- Browser detection using the user agent (en-US)
PirateCPA Что такое user agents, зачем они нужны, где их брать и как использовать
Добро пожаловать на борт судна! Юзер-агенты (user-agents) выполняют важную роль в мире интернета и маркетинга. Они представляют собой строку текста, которая идентифицирует браузер, операционную систему и другие характеристики устройства пользователя. По сути, юзерагент это строка, в которой содержатся данные об: идентификаторе браузера, операционной системе, устройстве и многом другом.
Пример user-agents
Для наглядности приведем несколько примеров юзерагентов:
Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.102 YaBrowser/20.9.3.136 Yowser/2.5 Safari/537.36
Mozilla/5.0 (iPhone; CPU iPhone OS 13_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.4 Mobile/15E148 Safari/604.1
Mozilla/5.0 (Linux; Android 10; Redmi Note 7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.91 Mobile Safari/537.36
Как видим, юзерагенты это действительно набор данных об устройстве. Даже неопытный интернет пользователь может заметить некоторые знакомые слова среди этих переменных. Например, в первом случае мы видим юзер агент ПК устройства, остальные агенты принадлежат мобильным девайсам.
Где применяются user-agents
- Адаптивный дизайн: cерверы могут использовать информацию о юзер агенте для определения типа устройства (например, мобильное или настольное) и предоставления соответствующей версии сайта, оптимизированной для данного устройства.
- Совместимость с браузерами: разные браузеры могут по-разному интерпретировать и отображать веб-страницы. Юзер агенты позволяют веб-серверам определить, какой браузер использует клиент, и предоставить версию сайта, которая будет корректно работать с этим браузером.
- Статистика и аналитика: юзер агенты используются для сбора статистических данных о посетителях сайта, таких как используемые браузеры, операционные системы и устройства. Эта информация может быть полезна для анализа трафика и определения требований к поддержке различных платформ.
- Безопасность и аутентификация: юзер агенты могут использоваться для определения подозрительных запросов и блокировки потенциально вредоносных активностей. Например, веб-серверы могут блокировать запросы от известных ботов или сканеров уязвимостей.
- Web-scraping и автоматизация: в некоторых случаях разработчики могут использовать специальные юзер агенты для автоматического сбора данных с веб-сайтов или выполнения других задач. В этом контексте юзер агенты могут быть использованы для маскировки ботов под обычных пользователей, чтобы обойти ограничения, установленные веб-серверами.
Где брать user-agents
Самое банальное, что можно порекомендовать в данном случае – просто вбить в поисковую строку запрос: “Списки user agents”. Вам выдаст сотни сайтов, где вы сможете добыть желанные юзеры и даже спокойно использовать их.
Однако, нам важно получить не просто рандомные значение, а актуальные данные. Используя старые юзер агенты можно столкнуться с рядом ошибок, а также не решить свою задачу по маскировки себя в сети.
- Сайт WhatIsMyBrowser (User Agents — Parser and API — Easily decode any user agent): ресурс с огромной базой юзер агентов, сортированной по: операционным системам, браузерам, девайсам и другим критерием. Содержит в себе более 160k строк начиная от первых версий хрома, заканчивая юзерами умных часов.
- Сайт SeoLik (Список актуальных User Agent): содержит в себе 1000 разных User Agent, которые обновляются несколько раз в день. Данные разделены на мобайл и десктоп устройства.
Как использовать user-agents
Предположим, что вы взяли свой желанный юзер агент и теперь думайте как его применить. Для этого есть множество способов, но мы расскажем о самых удобных и быстрых:
- Google Chrome:
- Используйте расширение, такое как User-Agent Switcher (User-Agent Switcher for Chrome) для быстрой подмены User-Agent.
- Воспользуйтесь инструментами разработчика:
- Откройте инструменты разработчика, нажав F12 или выбрав “Инструменты разработчика” в меню “Дополнительные инструменты”.
- Нажмите на иконку шестеренки в правом верхнем углу, чтобы открыть настройки.
- В разделе “Network” найдите “User agent” и выберите желаемый User-Agent из списка или введите свой.
- Mozilla Firefox:
- Используйте расширение, такое как User-Agent Switcher (User-Agent Switcher – Get this Extension for Firefox (en-US)) для быстрой подмены User-Agent.
- Измените настройки браузера:
- В адресной строке введите “about:config” и нажмите Enter.
- Нажмите “Принять риск и продолжить”.
- В поисковой строке введите “general.useragent.override”.
- Если параметр существует, дважды кликните по нему и введите новый User-Agent. Если параметра нет, щелкните правой кнопкой мыши и выберите “Новый” -> “Строка”. Введите “general.useragent.override” в качестве имени и установите значение для нового User-Agent.
- Safari:
- В Safari нет встроенной опции для изменения User-Agent, но вы можете использовать расширение, такое как User-Agent Switcher (https://apps.apple.com/us/app/user-agent-switcher/id1436643111?mt=12) для этой цели.
Хотим донести до вас мысль, что подмена User-Agent влияет на работу некоторых сайтов, так как они определяют ваш браузер на основе предоставленной информации об юзер агентах.
Итог
Юзер агенты играют важную роль как среди обычных людей, так и среди работников сети. Они дают возможность маскировки и анонимности, понимание пользовательского опыта, контроль качества вебсайтов. Используйте подмену юзерагентов с умом и не забывайте об актуальности используемых данных.