Определить user agent: Как определить и как изменить UserAgent в разных браузерах

Содержание

User-Agent — HTTP | MDN

Заголовок запроса User-Agent — это строка с характеристиками, по которым сервера и сетевые узлы могут определить тип приложения, операционную систему, производителя и/или версию пользовательского агента.

Обратите внимание: Показывать ту или иную страницу в зависимости от характеристик пользовательского агента — дурная практика. Почему не стоит так делать, читайте в статье «Определение браузера по пользовательскому агенту».

Тип заголовкаЗаголовок запроса
Запрещённое имя заголовкаНет

User-Agent: <product> / <product-version> <comment>

Общий формат для веб-браузеров:

User-Agent: Mozilla/5.0 (<system-information>) <platform> (<platform-details>) <extensions>

Директивы

<product>

Идентификатор продукта — его название или кодовое имя.

<product-version>

Версия продукта

Может быть пустым или содержать дополнительную информацию. Например, информацию о продукте.

Подробные сведения о user agent строках в Firefox и других браузерах, основанных на движке Gecko, вы найдёте в справочнике.

Строка UA в Firefox разбита на 4 части и одну общую метку для всех:

Mozilla/5.0 (platform; rv:geckoversion) Gecko/geckotrail Firefox/firefoxversion
  1. Mozilla/5.0 — общая метка, которая сообщает, что браузер совместим с Mozilla. По историческим причинам сегодня такую метку отправляет почти каждый браузер.
  2. platform указывает платформу, на которой работает браузер (Windows, Mac, Linux, Android и т.д.), а так же, мобильный ли это телефон. В телефонах на Firefox OS (en-US)
    указывается только Mobile, поскольку Firefox OS построена на веб-технологиях. Обратите внимание, platform может содержать несколько значений, разделённых ;. Подробная информация и примеры ниже.
  3. rv:geckoversion указывает релизную версию Gecko (например, «17.0«). В последних браузерах geckoversion совпадает с firefoxversion.
  4. Gecko/geckotrail указывает, что браузер основан на Gecko (на компьютерах geckotrail — всегда строка 20100101).
  5. 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

Строка 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

Браузер Opera также основан на движке Blink, поэтому его строка user agent совпадает со строкой Chrome, только в конце добавляется "OPR/<version>".

Примеры

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 также основан на движке Blink, поэтому его строка user agent совпадает со строкой Chrome, только в конце добавляется "Edg/<version>".

Примеры

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

В этом примере строка 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

Примеры

Mozilla/5.0 (compatible; MSIE 9.0; Windows Phone OS 7.5; Trident/5.0; IEMobile/9.0)

Примеры

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

Примеры

curl/7.64.1
PostmanRuntime/7.26.5
Specification
HTTP Semantics
# field.user-agent

BCD tables only load in the browser

with JavaScript enabled. Enable JavaScript to view data.
  • User-Agent detection, history and checklist
  • Firefox user agent string reference
  • Browser detection using the user agent

Last modified: , by MDN contributors

Модуль user_agents в Python.

Модуль user_agents предоставляет простой способ идентифицировать/обнаруживать устройства, такие как мобильные телефоны, планшеты и их возможности, путем синтаксического анализа (браузер/HTTP) строк пользовательского агента. Цель состоит в том, чтобы надежно определить:

  • Название пользовательского браузера и его версию, версию операционной системы.
  • Что представляет из себя user agent: мобильное устройство, планшет или ПК.
  • Имеет ли user agent сенсорные возможности (имеет сенсорный экран).

Модуль user_agents полагается на отличный ua-parser для фактического синтаксического анализа необработанной строки пользовательского агента (user agent).

Установка модуля
user_agents в виртуальное окружение:
# создаем виртуальное окружение 
$ python3 -m venv .venv --prompt VirtualEnv
# активируем виртуальное окружение 
$ source .venv/bin/activate
# ставим модуль user_agents
(VirtualEnv) Idea@Centre:~$ python -m pip install -U user_agents

Доступ к атрибутам браузера пользователя.

К различной базовой информации, которая может помочь идентифицировать посетителей, можно получить доступ к атрибутам браузера, устройства и ОС.

Примеры.
# Строка пользовательского агента iPhone
>>> ua_string = """Mozilla/5.0 (iPhone; CPU iPhone OS 5_1 like Mac OS X) AppleWebKit/534.46 
(KHTML, like Gecko) Version/5.1 Mobile/9B179 Safari/7534.48.3"""
# Импортируем установленный модуль
>>> from user_agents import parse
# передаем строку пользовательского агента парсеру
>>> user_agent = parse(ua_string)

Доступ к атрибутам браузера:

>>> user_agent.browser  
# Browser(family='Mobile Safari', version=(5, 1), version_string='5. 1')
>>> user_agent.browser.family  
# 'Mobile Safari'
>>> user_agent.browser.version  
# (5, 1)
>>> user_agent.browser.version_string   
# '5.1'

Доступ к свойствам операционной системы:

>>> user_agent.os  
# OperatingSystem(family='iOS', version=(5, 1), version_string='5.1')
>>> user_agent.os.family  
# 'iOS'
>>> user_agent.os.version  
# (5, 1)
>>> user_agent.os.version_string  
# '5.1'

Доступ к свойствам устройства:

>>> user_agent.device  
# Device(family='iPhone', brand='Apple', model='iPhone')
>>> user_agent.device.family  
# 'iPhone'
>>> user_agent.device.brand 
# 'Apple'
>>> user_agent.device.model 
# 'iPhone'
# Viewing a pretty string version
>>> str(user_agent) 
# "iPhone / iOS 5.1 / Mobile Safari 5.1"

Определение класса устройства пользователя и его возможностей.

Модуль user_agents также предоставляет несколько других, более «сложных» атрибутов, которые являются производными от одного или нескольких основных атрибутов, определенных выше. На данный момент эти атрибуты должны правильно определять популярные платформы/устройства.

В настоящее время поддерживаются следующие атрибуты:

  • is_mobile: идентифицируется ли пользовательский агент как мобильный телефон (iPhone, телефоны Android, устройства Blackberry, Windows Phone и т. д.),
  • is_tablet: идентифицируется ли пользовательский агент как планшет (iPad, Kindle Fire, Nexus 7 и т. д.),
  • is_pc: идентифицирован ли пользовательский агент как работающий с традиционной «настольной» ОС (Windows, OS X, Linux),
  • is_touch_capable: есть ли у пользовательского агента сенсорные возможности,
  • is_bot: является ли пользовательский агент сканером/пауком/ботом.
Примеры.

Старое устройство Blackberry без сенсорного управления:

>>> from user_agents import parse
>>> ua_string = """BlackBerry9700/5.0.0.862 Profile/MIDP-2.1 Configuration/CLDC-1.
1 VendorID/331 UNTRUSTED/1.0 3gpp-gba""" >>> user_agent = parse(ua_string) >>> user_agent.is_mobile # True >>> user_agent.is_tablet # False >>> user_agent.is_touch_capable # False >>> user_agent.is_pc # False >>> user_agent.is_bot # False >>> str(user_agent) # "BlackBerry 9700 / BlackBerry OS 5 / BlackBerry 9700"

Строка пользовательского агента Samsung Galaxy S3:

>>> from user_agents import parse
>>> ua_string = """Mozilla/5.0 (Linux; U; Android 4.0.4; en-gb; GT-I9300 Build/IMM76D) 
AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30"""
>>> user_agent = parse(ua_string)
>>> user_agent.is_mobile 
# True
>>> user_agent.is_tablet 
# False
>>> user_agent.is_touch_capable 
# True
>>> user_agent.is_pc 
# False
>>> user_agent.is_bot 
# False
>>> str(user_agent) 
# "Samsung GT-I9300 / Android 4.0.4 / Android 4.
0.4"

Строка пользовательского агента iPad:

>>> from user_agents import parse
ua_string = """Mozilla/5.0(iPad; U; CPU iPhone OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 
(KHTML, like Gecko) Version/4.0.4 Mobile/7B314 Safari/531.21.10"""
>>> user_agent = parse(ua_string)
>>> user_agent.is_mobile 
# False
>>> user_agent.is_tablet 
# True
>>> user_agent.is_touch_capable 
# True
>>> user_agent.is_pc 
# False
>>> user_agent.is_bot 
# False
>>> str(user_agent) 
# "iPad / iOS 3.2 / Mobile Safari 4.0.4"

Строка пользовательского агента Kindle Fire:

>>> from user_agents import parse
>>> ua_string = """Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_3; en-us; Silk/1.1.0-80) 
AppleWebKit/533.16 (KHTML, like Gecko) Version/5.0 Safari/533.16 Silk-Accelerated=true"""
>>> user_agent = parse(ua_string)
>>> user_agent.is_mobile 
# False
>>> user_agent.
is_tablet # True >>> user_agent.is_touch_capable # True >>> user_agent.is_pc # False >>> user_agent.is_bot # False >>> str(user_agent) # "Kindle / Android / Amazon Silk 1.1.0-80"

Пользовательский агент устройства с ОС Windows 8 с сенсорным экраном:

>>> from user_agents import parse
>>> ua_string = 'Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Trident/6.0; Touch)'
>>> user_agent = parse(ua_string)
>>> user_agent.is_mobile 
# False
>>> user_agent.is_tablet 
# False
>>> user_agent.is_touch_capable 
# True
>>> user_agent.is_pc 
# True
>>> user_agent.is_bot 
# False
>>> str(user_agent) 
# "PC / Windows 8 / IE 10"

Определение мобильных агентов в Django 3

Пользователи, заходя на сайт, отсылают информацию о своем устройстве и браузере. Эта информация может пригодиться если вы ведете статистику или вам нужно возвращать разные данные для каждого из устройств. Подобная информация называется «User-Agent» и в Django уже есть методы по работе с ними. В этой статье будут рассмотрены примеры по работе с агентами в Django.

 

Браузер пользователя отсылает HTTP/S пакет с информацией, которую он считает нужным передать. Набор информации может быть разным, а в некоторых случаях и ложным. В основном это информация о версиях браузера, операционной системе и производителе устройства. Кроме этого в агенте можно передавать свою информацию, которая будет учитываться только вашим приложением.

Учитывая, что существует множество разных версий браузеров и устройств, вариантов агентов существует множество. Самый популярный тип агента на май 2021 (около 10% пользователей):


Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36

В Django эти агенты видны через ‘request’. Кроме этого есть пакеты, которые немного автоматизируют процесс.

 

Получая каждый запрос от пользователя мы можем увидеть параметры агента:


def main(request):
    agent = request.META['HTTP_USER_AGENT']
    print(agent)
    return render(request, 'base.html')

У нас возвращается строка и это значит, что нам нужно либо парсить данные, либо искать не точное соответствие:


def main(request):
    agent = request.META['HTTP_USER_AGENT']
    if 'Android' in agent:
        print(agent)
    return render(request, 'base.html')

Вы так же можете работать с этими данными через шаблон:


{{ request.headers.user_agent }}

 

Мы можем немного автоматизировать работу с агентами с пакетом ‘user-agents’, который содержит шаблоны известных устройств и небольшую логику по их определению. Установить его можно следующим образом:


pip install pyyaml ua-parser user-agents

Он так же использует 2 дополнительных пакета, которые выполняют следующие задачи:

  • pyyaml — пакет для работы с YAML. В примерах, которые использовались ниже пакет не понадобился и в коде его упоминание не нашел, но в документации указан.
  • ua-parser — парсер агентов.

Он не относится напрямую к Django, но мы можем использовать его передавая на парсинг данные из ‘HTTP_USER_AGENT’. Немного примеров того, что мы можем определить:


from django.shortcuts import render
from user_agents import parse

def main(request):
    agent = request.META['HTTP_USER_AGENT']
    agent = parse(agent)
    # Определяем мобильное устройство
    print(agent.device)
    # Определяем производителя
    print(agent.device. brand)
    # Операционная система
    print(agent.os)
    # Семейство операционной системы
    print(agent.os.family)
    # Тип браузера
    print(agent.browser)
    # Версия
    print(agent.browser.version)
    return render(request, 'base.html')

Кроме этого, мы можем сразу определить тип устройства, является ли он мобильным телефоном, ПК и т.д.:


from user_agents import parse

ua_string = 'Mozilla/5.0 (Linux; U; Android 4.0.4; en-gb; GT-I9300 Build/IMM76D) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30'
user_agent = parse(ua_string)
# Мобильный клиент
user_agent.is_mobile
# Планшет
user_agent.is_tablet
# Поддерживает касания
user_agent.is_touch_capable
# ПК
user_agent.is_pc
# Поисковый бот
user_agent.is_bot

 

 

Есть более автоматизированное решение для работы с агентами в виде пакета ‘django-user-agents’. В PyPi и на странице проекта на GitHub нет указана поддержка для Django 3, но каких-то проблем в работе на этой версии я не встретил.

Установка состоит из 3 дополнительных пакетов, которые описывались раньше:


pip install pyyaml ua-parser user-agents
pip install django-user-agents

Этот пакет должен быть включен в ‘INSTALLED_APPS’ и ‘MIDDLEWARE’:


INSTALLED_APPS = (
    ...
    'django_user_agents',
)

...

MIDDLEWARE = (
    # остальные
    'django_user_agents.middleware.UserAgentMiddleware',
)

Дополнительная возможность этого пакета — использовать кэширование агентов для ускорения парсинга:


# ваши настройки кэширования и сервер
CACHES = {
    'my_settings': {
        'BACKEND': 'django.core.cache.backends.memcached.PyMemcacheCache',
        'LOCATION': '127. 0.0.1:11211',
    }
}

# указываем какую настройку использовать
USER_AGENTS_CACHE = 'my_settings'

Теперь мы можем обращаться к ‘User-Agents’ используя методы аналогичные предыдущей главе:


from django.shortcuts import render

def main(request):
    # Пользователь использует мобильное устройство?
    print(request.user_agent.is_mobile)
    # Определяем производителя устройства
    print(request.user_agent.device.family)
    # ОС пользователя
    print(request.user_agent.os)
    # Версия операционной системы
    print(request.user_agent.os.version)
    return render(request, 'base.html')

Мы так же можем использовать эти методы в шаблоне:


{{ request.user_agent.browser.family }}

{% load user_agents %}

{% if request|is_mobile %}
    Используется мобильное устройство
{% endif %}

 

. ..

Рекомендую

Подписывайтесь на наш Telegram канал

Теги: #python #django

Как быстро изменить User Agent браузера без установки каких-либо расширений.

User Agent браузера, что это такое и зачем он нужен.

Юзер агент «User Agent» браузера — это идентификация, передаваемая браузерами сайтам вместе с запросами на получения контента. Сайты, основываясь на нее, формируют данные, для правильного предоставления пользователю соответственного контента. Или это может быть соответствующая поддержка из маркета. Большинство сайтов использует эту информацию, чтобы правильно отображать контент на различных платформах. Эта функция также может быть полезна для пользователей, когда им нужно сделать так, чтобы их веб-трафик исходил из определенного браузера, чтобы обмануть сайт, который блокирует несовместимые и устаревшие браузеры. Все популярные браузеры имеют встроенные способы изменения юзер агента.

Строка User-agent также используется на веб-сайтах для предотвращения индексирования поисковиками некоторых страниц, путем создания правил в специальном файле robots.txt. Некоторые другие программы, например менеджеры закачек, также имеют User-Agent и возможность его изменять.

User Agent браузера и анонимность в сети.

Следует понимать, что изменение User Agent в браузере не дает гарантии что Вас не узнают, Сервисы давно научились извлекать настоящие данные о браузере и операционной системе с помощью javascript, игнорируя сообщение браузера. Все браузеры на основе Chromium Google Chrome, Opera  и т.д., кроме Iron передают не только user-agent, но и appVersion – текст из страницы «О программе» любого браузера. Также, о браузере можно узнать такой параметр как Vendor, который поменять нельзя. Vendor указывает на производителя, идентификатор браузера для Safari и Chrome это WebKit, для IE — Microsoft, для FF — Mozilla и т.д. Юзер агент меняет только версию браузера, данные о использующейся операционной системе все равно доступны. Некоторые сайты, например, YouTube, для старых операционных систем не грузит дополнительные скрипты, что уменьшает нагрузку на процессор. Также существуют различные косвенные данные, раскрывающие ваше оборудование, например  Battery API позволяет узнавать есть ли в устройстве аккумулятор и его уровень заряда, количество ядер процессора, характеристики экрана и пр. Ко всему прочему браузер можно отслеживать по Webrtc передающий ваш реальный IP, в WebGL создавать уникальный отпечаток, fingerprints и пр.

Как изменить User Agent в Google Chrome.

Изменить юзер агент браузера от Google через Инструменты разработчика можно следующим образом.

  1. Запустите Chrome и щелкните трехточечный значок после адресной строки браузера. В появившемся меню выберите «Дополнительные инструменты» и «Инструменты разработчика». Или нажмите сочетание клавиш «Ctrl + Shift + I»;
  2. Затем нажмите на значок из трех точек в верхнем углу открывшегося окна. В появившемся меню выберите пункт «Дополнительные инструменты» и «Условия сети»;расположение chrome меню «сетевые условия»chrome меню «сетевые условия»

     

  3. В разделе «Условия сети» найдите поле «Пользовательский агент» и щелкните стрелку рядом с ним, чтобы увидеть список, и выберите пользовательский агент, который вы хотите использовать. Если стрелка недоступна, снимите флажок «Выбрать автоматически».выбор User Agent в chrome меню «сетевые условия»

     

Смена User Agent через ярлык в Google Chrome.

Смена User Agent через ярлык в Google Chrome

Инструкция работает в версиях выше 26. Для смены значения юзер агента нужно кликнуть по ярлыку браузера правой кнопкой мыши, нажать на «Свойства» и в новом появившемся окне дописать в строке «Объект» ключ. Два тире, user-agent равно и кавычки без пробелов, и в кавычках указать желаемый юзер агент. —user-agent=«…». Будьте внимательны при копировании, авто-замена преображает написание двойного тире в один дефис.

Сохраните и запустите Chrome.

Также его можно запустить с такими параметрами через команду утилиты «Выполнить». Ее можно найти в меню «Пуск» или нажать одновременно кнопки Windows и R. В диалоговом окне написать chrome —user-agent=«ваш юзер агент».

Смена User Agent через утилиту «выполнить» в Google Chrome

Узнать данные User Agent можно путем перехода по локальному адресу about:

данные Chrome User Agent по адресу about

Как изменить User Agent в Firefox через конфигурацию.

Браузер Firefox дает возможность в его настройках написать желаемый User Agent. Инструкция действует для версий, начиная с 34, для этого потребуется:

  1. В окне браузера Firefox щелкните на адресную строку и введите «about: config», после перехода по адресу появится сообщение, предупреждающее вас об опасности вмешательства в настройки Firefox. Чтобы продолжить, нажмите кнопку «Я принимаю риск!»;переходим в Firefox на страницу about config

     

  2. Найдите или воспользуйтесь поиском значение отвечающее за отображение юзер агента браузера. Щелкните правой кнопкой мыши по нему. В появившемся меню нажмите пункт «Новые предпочтения», а затем «Строка …»;ищем на странице в Firefox about config
  3. В появившемся небольшом окне введите «general.useragent.override» (без кавычек) и нажмите кнопку «ОК»;создание строки general.useragent.override в Firefox

     

  4. На следующем окне в форму введите желаемого агента в качестве значения и нажмите кнопку «ОК». Вам нужно будет найти, как правильно пишется User Agent в Интернете.ввод произвольного User Agent в firefox

     

Можно найти обширные списки пользовательских юзер агентов на различных веб-сайтах (например, udger.com) и ввести его в настройках. Например:

  • «Linux / Chrome 53: Mozilla / 5.0 (X11; Ubuntu; Linux x86_64) AppleWebKit / 535.11 (KHTML, как Gecko) Chrome /53.0.2785.34 Safari /537.36»
  • Opera 12.17 (Win 8 x64): Opera/9.80 (Windows NT 6.2; WOW64) Presto/2.12.388 Version/12.17
  • Mozilla/0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
  • Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET4.0C; .NET4.0E; Media Center PC 6.0; CMNTDFJS; F9J; InfoPath.3; rv:11.0) like Gecko
  • Internet Explorer 11 (Win 8.1 x64): Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; ASU2JS; rv:11.0) like Gecko
  • Mozilla/5. 0 (Windows NT 6.1; Win64; x86) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36

Как изменить User Agent в EDGE и Windows Explorer.

Для смены юзер агента в браузере от корпорации microsoft потребуется:

  1. С открытым окном браузера Microsoft Edge или Internet Explorer нажать клавишу F12, чтобы получить доступ к опции «Инструменты разработчика»;Microsoft Edge или Internet Explorer меню «Инструменты разработчика»

     

  2. В появившемся окне перейдите в поле «пользовательский агент» или «Эмуляция» и щелкните стрелку выпадающего меню рядом с ним;Microsoft Edge или Internet Explorer меню Эмуляция

     

  3. Появится список опций, которые вы можете использовать, нажмите на один из них. Все готово.Microsoft Edge или Internet Explorer выбор User Agent

     

Но такой способ настройки временный. Это относится только к текущей вкладке и только тогда, когда открыта панель «Инструменты разработчика».

Как изменить User Agent в Safari встроенными методами.

  1. Откройте браузер и щелкните в строке меню по «Safari», затем «Настройки…»;меню Safari

     

  2. В настройках перейдите на вкладку «Дополнительно». Затем отметьте опцию «Показать меню разработчика в строке меню»;Настройка показать меню разработчика в Safari

     

  3. Теперь вы можете щелкнуть меню «Разработчик» и опцию «Юзер агент». В появившемся меню выберите агента, которого хотите использовать.опция user agent в Safariввод произвольного user agent в Safari

     

Такая настройка для этого браузера относится только к текущей вкладке. Другие открытые вкладки будут использовать пользовательский агент по умолчанию.

Как поменять user agent в Opera без сторонних расширений.

Для смены User Agent в настройках браузера Opera нужно:

  1. В браузере перейти по адресу: opera:config#UserPrefs|CustomUser-Agent.смена User Agent в Opera

     

  2. В появившемся поле выпадающего меню с названием «Custom User-Agent» установить нужное значение строчки «user-agent». Прокрутите открытое окно вниз и сохраните внесенные изменения.

В более новых версиях Оперы, например, в сборке 43.0, такая возможность отключена. В новых версиях смена юзер агента происходит как в браузере Google Chrome.

смена User Agent в новых версиях Opera

Также стоит отметить, что для смены User Agent для каждого браузера существует множество расширений, которые доступны в соответственных магазинах. Они добавят гораздо больше возможностей по настройке.

Как изменить user agent в opera

Что такое User-Agent в браузере и как его изменить

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

User-agent дает возможность определить используемую операционную систему, устройство, с которого Вы зашли на сайт (смартфон, ноутбук, или планшет), а также поддерживаемые браузером функции, например, ActiveX.

Если Вам требуется изменить User-Agent в Opera, Chrome или Firefox, то мы расскажем, как это можно сделать.

Внимание!

Имейте в виду, что User-Agent необходим для корректного отображения сайтов без адаптивного дизайна, так как разными браузерами используются разные стили и скрипты для отображения одного и того же содержимого. Актуальные данные о всевозможных значениях этого параметрам легко найти по адресу browscap.org, а также в конце нашей статьи.

Как поменять user agent в Opera

В браузере Opera кликните по адресной строке и наберите следующий адрес: opera:config#UserPrefs|CustomUser-Agent. В появившемся поле с названием «Custom User-Agent» установите нужное значение строчки user-agent. Прокрутите открытое окно вниз и сохраните внесенные изменения.

В более новых версиях Оперы, например, в сборке 43.0, такая возможность отключена. Рекомендуем установить расширение User-Agent Switcher, которое позволяет менять рассматриваемую нами настройку из удобного меню.

Как поменять user agent в Google Chrome

Не все версии Chrome поддерживают легкую смену строки юзерагента. Тем не менее, приведенная ниже инструкция работает в версиях выше 26. Чтобы изменить user-agent кликните по ярлыку браузера правой кнопкой мыши, выберите «Свойства» и в новом окне допишите в строке «Объект» ключ —user-agent=»…», где в кавычках нужно указать необходимый Вам user-agent. Будьте внимательны, написание ключа читается так: тире тире user тире agent и т.д. Веб преображает написание двойного тире в один дефис.

Нажмите «ОК» и запустите Хром. Также эту операцию можно выполнить и другими способами, например, одновременно зажать кнопки Win и R, а в диалоговом окне «Run» написать chrome —user-agent=»требуемое значение». Будьте внимательны, написание ключа читается так: тире тире user тире agent и т.д. Веб преображает написание двойного тире в один дефис.

Узнать текущие данные этого параметра можно путем перехода по локальному адресу about:

Как поменять user agent в Mozilla Firefox

Как и в Хроме, не во всех версиях Firefox можно легко изменить рассматриваемый нами параметр. Приведенная инструкция действует для версий, начиная с 34. В адресной строке введите about:config и в появившейся странице создайте параметр general.useragent.override.

Выберите тип создаваемого параметра «Строка» и в новом окне впишите нужное значение user agent.

Список различных user agent

— Mozilla/0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36

— Mozilla/5.0 (Windows NT 6.1; Win64; x86) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36

— Mozilla/5.0 (Windows NT 6. 1; WOW64; Trident/7.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET4.0C; .NET4.0E; Media Center PC 6.0; CMNTDFJS; F9J; InfoPath.3; rv:11.0) like Gecko

— Opera 12.17 (Win 8 x64): Opera/9.80 (Windows NT 6.2; WOW64) Presto/2.12.388 Version/12.17

— Internet Explorer 11 (Win 8.1 x64): Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; ASU2JS; rv:11.0) like Gecko

User Agent

Чтобы распознать user agent (юзерагент) и узнать какую информацию можно получить из этой строки о компьютере или мобильном устройстве, воспользуйтесь инструментом ниже. Также на странице представлена информация как изменить useragent в самых известных веб-браузерах Mozilla Firefox, Google Chrome, Opera, Apple Safari и Internet Explorer, в мобильных браузерах Android, Dolphin, а также в PHP. Примеры строк user-agent.

Как распознать User Agent онлайн?

Чтобы распознать строку useragent, воспользуйтесь онлайн формой ниже. Вставьте свою строку в поле User agent, или нажмите ссылку Мой user agent, чтобы узнать и распознать строку своего веб-браузера.

Что такое User Agent?

User Agent — это строка, которую используют веб-браузеры в качестве своего имени, она содержит не только имя браузера, но и версию операционной системы и другие параметры. По user agent можно определить достаточно много параметров, например, название операционной системы, её версию и разрядность. Также можно определить и само устройство, на котором установлен браузер, это может быть компьютер, планшет, iPhone, iPad или другое мобильное устройство. Еще по user agent можно определить функции, которые поддерживает веб-браузер, например, JavaScript, Java Applet, Cookie, VBScript и Microsoft’s ActiveX.

Как происходит определение?

Как возможно определить так много параметров из одной маленькой строки? Большинство известных строк user agent находятся в базе данных browscap.org, если такая строка найдена в базе, то можно получить многие параметры, например, что за веб-браузер, что за версия, что за операционная система и т. д. База user agent постоянно обновляется и поддерживается, её можно скачать совершенно бесплатно на сайте browscap.org.

Как и кто использует данные user agent?

Данные из user agent используют веб-сервера, для определения версии браузера, чтобы отобразить наиболее корректно веб-страницу. Хоть этот метод уже и устарел, некоторые сайты продолжают использовать его для определения мобильных устройств. На смену такому способу пришел адаптивный дизайн.

Как изменить user agent?

Как изменить строку браузера на свою? Когда может потребоваться изменить user agent? Тогда, когда вы подозреваете, что сайт выдает информацию, исходя из вашей версии веб-браузера и не дает никакими образом увидеть полную версию сайта, вот тогда нужно изменить user agent и попробовать зайти на сайте еще раз.

Как изменить user agent в Mozilla Firefox

Актуально для версии Mozilla Firefox 34.0 и выше. В адресной строке набрать about:config и создать строку с именем general. useragent.override , по умолчанию такой строки нет. В значение строки необходимо вписать то, что будет отображаться в user agent.

Как изменить user agent в Chrome

Актуально для версии Google Chrome 26.0.1410.64 и выше. Необходимо запустить веб-браузер с ключом —user-agent=»» и в кавычках указать новую строку user-agent. Например, в Windows можно запустить, нажав Win+R, и в поле «Открыть» вписать chrome —user-agent=»MyBrowser» . Проверить текущее значение можно, введя в адресной строке about: .

Как изменить user agent в Opera

Актуально для версии Opera 12.15 и выше. Необходимо в адресной строке набрать opera:config#UserPrefs|CustomUser-Agent и заполнить выделенное поле «Custom User-Agent» новым значением для строки user agent. Затем необходимо прокрутить страницу в самый низ, нажать «Сохранить».

Как изменить user agent в Safari

Актуально для версии Apple Safari 5.1.7 и выше. Необходимо зайти в меню «Разработка». Чтобы увидеть панель меню, необходимо нажать Alt. Если не отображается меню «Разработка», его необходимо включить, для этого зайдите в меню «Правка» — «Настройки», перейдите во вкладку «Дополнения» и поставьте галочку напротив «Показывать меню разработка в строке меню». После опять нажмите Alt и выберите «Разработка» — «Пользовательский агент». На выбор уже представлены некоторые варианты, если ни один не подошел, выбирайте «Другой» и вписать свою строку user agent.

Как изменить user agent в Internet Explorer

Актуально для версии Internet Explorer 10 и выше. Необходимо нажать F12, откроется панель «Средства разработчика», выбрать меню «Сервис» — «Изменить строку агента пользователя». Уже, на выбор, представлено несколько вариантов, если ни один не подошел, то выбирайте «Особая. «. В поле «Понятное имя» ввести любое имя, а в поле «Строка агента пользователя» ввести нужную строку user agent. Затем нажать «Добавить», выбрать её в списке и нажать «Установить». Единственный недостаток этого способа в том, что действует он временно, до закрытия веб-браузера, после нового запуска браузера необходимо опять нажать F12 и выбрать созданный вариант из списка быстрого выбора.

Еще способ изменить строку user agent — это исправить её в реестре, тогда установки сохраняются и после закрытия браузера, но есть минусы данного способа. Изменить строку user agent на совершенно произвольную не получится. Дело в том, что эта строка состоит из разных значений реестра, которые отделены друг от друга точкой с запятой («;»). Если значение нужно поменять для всех пользователей, то это HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\ User Agent\ , а для одного текущего пользователя здесь HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\ User Agent\ . По умолчанию там только один ключ По умолчанию (default). Необходимо создать три «строковых параметра» Compatible , Platform и Version . Чтобы изменения вступили в силу, необходимо перезагрузить браузер. Установите для примера данные значения:

  • По умолчанию = «Mozilla/5.0»
  • Compatible = «compatible»
  • Platform = «Windows NT 6.1»
  • Version = «MSIE 10.0»

В зависимости от необходимости замените указанные значения на нужные и не забудьте перезапустить браузер. Более подробно об этом можно прочитать на сайте Microsoft.

Как изменить User Agent на мобильных устройствах

Во многих мобильных устройствах уже предусмотрены изменения useragent строки с помощью стандартных настроек веб-браузера.

Как изменить User Agent в стандартном браузере для Android

В стандартном браузере Android строка useragent изменяется в настройках браузера, опция UAString. Но по умолчанию этот пункт меню скрыт. Для отображения данного меню, необходимо набрать в адресной строке about:debug и нажать Поиск или Go (на виртуальной клавиатуре). Затем заново зайти в настройки: Настройки » UAString, теперь данная опция доступна для выбора.

Как изменить User Agent в Dolphin Browser

Актуально для версии Dolphin Browser 11. 4.2 и выше. Изменения предусмотрены стандартными настройками в меню «Настройки» » «Специальные» » «Персонализация» » «Пользовательский агент». На выбор представлены сразу несколько вариантов: «Android», «Рабочий стол», «iPhone», «iPad», «Пользовательский». Последний вариант позволяет ввести произвольную useragent строку.

Подмена User Agent браузера Opera

Давно минули те времена, когда многие популярные Интернет-ресурсы были удобны для пользователей. Теперь, чтобы открыть какое-нибудь Интернет-творение дебила, возомнившего себя гуру программирования и увешевшего его, словно новогоднюю елку, гламурным дерьмом на HTML 5 или jQuery, нужно покупать современный компьютер. Иной раз мощности старого железа не хватает, чтобы получить на таком сайте то, ради чего, собственно, и создавался Интернет, — информацию, а не гламурный хлам. Я давно взял за правило: на сайте, который не открывается в Opera 9.64, делать нечего. За исключением тех случаев, когда ему нет альтернативы (Интернет-ресурсы банков, операторов мобильной связи, почтовых служб, транспортных компаний и других, чьи сайты делают неизлечимые идиоты). В таких случаях я использую Opera 11.64, иногда — Opera 12.14 (последнюю версию самого быстрого и удобного браузера, созданную еще норвежскими программистами, а не индусами). Opera старше версии 12.14 — это уже другой браузер, подходящий, как и другие его современные аналоги, под определение «дерьмо».

Тем не менее, используя Opera 11.64, Opera 12.14, нередко сталкиваешься с ситуацией, когда на каком-нибудь сайте появляется сообщение о необходимости обновить браузер. То есть когда некто, возомнивший себя гуру программирования, решает за вас, каким программным обеспечением вам пользоваться. Вот тогда и требуется подмена User Agent Opera — как это сделать, я опишу ниже.

Подмена User Agent Opera 11.64

В настройках любой версии браузера Opera есть возможность изменения User Agent для каждого сайта — за это отвечает параметр Spoof UserAgent ID секции [User Agent], у которого могут быть пять значений:

ЗначениеUser Agent
1 — представляться как OperaOpera/9. 80 (Windows NT 5.1; U; ru) Presto/2.10.229 Version/11.64
2 — представляться как FirefoxMozilla/5.0 (Windows NT 5.1; ru; rv:2.0) Gecko/20100101 Firefox/4.0 Opera 11.64
3 — представляться как Internet ExplorerMozilla/5.0 (compatible; MSIE 9.0; Windows NT 5.1; ru) Opera 11.64
4 — маскироваться под FirefoxMozilla/5.0 (Windows NT 5.1; ru; rv:2.0) Gecko/20100101 Firefox/4.0
5 — маскироваться под Internet ExplorerMozilla/5.0 (compatible; MSIE 9.0; Windows NT 5.1; Trident/5.0; ru)

Казалось бы, значение Spoof UserAgent нам вполне подойдет, но браузер Firefox 4.0, как и Opera 11.64, давно устарел — так считают упомянутые выше сайтописатели. Выход, тем не менее, есть — нужно отредактировать файл opera.dll, заменив в нем исходное значение строки User Agent на свое, для чего можно использовать любой hex-редактор.

1. Редактирование opera.dll в hex-редакторе

Файл opera. dll отредактировать можно, например, в бесплатном hex-редакторе HxD, в котором реализованы алгоритмы SHA-X, MD-X. Скачать его портативную русскую версию, не требующую инсталляции, можно на сайте производителя mh-nexus.de (вы, наверное, уже взяли за правило — программы скачивать можно ТОЛЬКО на сайтах производителей и нигде более).

Итак, предварительно сохранив архивную копию файла opera.dll под именем original_opera.dll, открываем его в hex-редакторе HxD и с помощью пункта меню «Поиск» находим строки, содержащие Mozilla/5.0 — их всего четыре (в правой части окна HxD). Нас интересует строка, соответствующая значению Spoof UserAgent (представляться как Firefox), которая имеет следующий вид:

Mozilla/5.0 (%s; %s; rv:2.0) Gecko/20100101 Firefox/4.0 Opera 11.64.5.0 (%s; %s; rv:2.0)

Для ее замены путем подбора по количеству символов (оно должно совпадать в исходной строке и строке, которая ее заменит) выбираем User Agent современного браузера — им оказался Chrome 41:

Mozilla/5. 0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2224.3 Safari/537.36

Если подходящей по длине строки не нашлось, то можно взять строку меньшей длины, а недостающие символы заполнить нуль-байтами — 00, используя пункт контекстного меню «Заполнить выделение -> Нуль-байты». Кроме того, в конце исходной строки есть четыре нуль-байта, из которых оставить можно только последний, а на место первых трех вклеить три новых символа (если новая строка User Agent длинее исходной в HxD на три символа). В нашем случае в исходной строке, отображаемой в правой части окна HxD в текстовом виде (в левой части отображается шестнадцатеричный код строки), нужно вырезать (через контекстное меню HxD) следующие 88 символов:

Mozilla/5.0 (%s; %s; rv:2.0) Gecko/20100101 Firefox/4.0 Opera 11.64.5.0 (%s; %s; rv:2.0)

и вклеить на их место 88 символов строки User Agent браузера Chrome 41:

Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41. 0.2224.3 Safari/537.36

То есть общий вид исходной строки будет таким:

Mozilla/5.0 (%s) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2224.3 Safari/537.36

Сохраняем отредактированный файл opera.dll под тем же именем и заменяем им оригинальный в папке браузера Opera 11.64 (не забыв перед этим сохранить резервную копию исходного файла opera.dll).

2. Установка User Agent браузера Opera 11.64 для всех сайтов

В настройках браузера Opera 11.64, открыть которые можно через адресную строку: opera:config, в секции [User Agent] устанавливаем значение Spoof UserAgent ID равным 2. То же самое можно сделать через файл настроек operaprefs.ini в папке profile:

[User Agent]
Spoof UserAgent >

Теперь всем сайтам браузер Opera 11.64 будет отдавать по умолчанию новый User Agent, соответствующий Chrome 41, — проверить можно на useragentstring.com . Кроме того, можно отредактировать в текстовом редакторе файл языковой локали \locale\ru\ru.lng, заменив значение 590106237=»Представляться как Firefox» на новое: 590106237=»Представляться как Chrome».

Такие же манипуляции в opera.dll можно проделать и с остальными значениями User Agent, заменив их на нужные. Обратите внимание на то, что при установке значения Spoof UserAgent или Spoof UserAgent по умолчанию отображаться будет 1 вариант — представляться как Opera.

Подмена User Agent Opera 12.14

Изменить User Agent Opera 12.14 еще проще — разработчики браузера предусмотрели в секции [User Prefs] новый параметр — Custom User-Agent. Для этого достаточно указать в файле настроек operaprefs_default.ini или operaprefs.ini (в папке profile):

[User Prefs]
Custom User-Agent=Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2224.3 Safari/537.36

При этом в секции [User Agent] параметр Spoof UserAgent (представляться как Opera, которая теперь стала Chrome 41).

Подмена User Agent Opera Chrome

В версиях Opera, работающих на движке Chrome, подменить User Agent можно через свойства ярлыка. Для этого строку «Объект», где указан путь к исполняемому файлу программы, нужно дополнить:

—user-agent=»Mozilla/5. 0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36 OPR/69.0.3686.77″

Строка должна выглядеть так:

«C:\Program Files\Opera\Portable\launcher.exe» —user-agent=»Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36 OPR/69.0.3686.77″

Как отключить обновление Opera Chrome

Кстати, через свойства ярлыка можно отключить также автоматические обновления браузера, добавив —disable-update:

«C:\Program Files\Opera\Portable\launcher.exe» —disable-update —user-agent=»Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36 OPR/69.0.3686.77″

Теперь, если запустить браузер через такой ярлык, обновления будут отключены, а его идентификация изменится.

Запрещается републикация статьи без указания активной прямой ссылки на источник.
За помощью в решении различных задач по программированию на языках PHP, JavaScript (включая jQuery) обращайтесь через раздел «Контакты» .

User-Agent: визитная карточка веб-приложения | Бортовой журнал

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

Итак, User-Agent. В обычной жизни нас с вами можно идентифицировать по разным параметрам: голос и внешность выдают в нас мужчину или женщину, форма — военного или доктора. Помимо таких очевидных, есть ряд прочих критериев, которые позволяют нам определить, с кем имеешь дело, и как именно стоит себя вести в данной ситуации. Похожим образом происходит взаимодействие с сайтами — веб-приложение сообщает данные о себе, а сайт в свою очередь может обрабатывать их различными способами. Эта информация передается в User-Agent, о котором пойдет речь далее.

Что такое User-Agent, какую информацию он передает? 

В последние годы использование глобальной сети Интернет стало настолько привычным и даже обыденным, что при открытии какого-либо сайта мы вовсе не замечаем, что первым делом запускаем браузер. А ведь именно он — браузер — является тем приложением, которое позволяет нам видеть сайты красиво оформленными, а не состоящими из набора HTML-тегов и текстовых ссылок. При открытии сайта браузер посылает HTTP-запрос к серверу, который занимается обслуживанием этого сайта, дожидается ответа от сервера и обрабатывает его определенным образом. HTTP-запрос содержит в себе набор информации, из которой стоит выделить метод обработки данных (GET, POST), адрес запрашиваемого ресурса, IP-адрес отправителя, и, собственно, User-Agent.

User-Agent — это текстовая часть запроса, которую веб-приложения используют для сообщения сайту информации о себе. User-Agent браузера содержит название и версию приложения, а также данные об операционной системе компьютера: версия, разрядность, язык по умолчанию и другие параметры.  Помимо браузеров User-Agent есть у утилит (Wget и cURL) и поисковых роботов — обычно в них содержится имя робота и ссылка на ресурс, регламентирующий его работу.

Ниже рассмотрены различные варианты User-Agent с расшифровкой тех данных, на которые следует обратить внимание.

Браузеры ПК на примере Mozilla Firefox 36 (Win 8.1 x64):

Mozilla/5.0 (Windows NT 6.3; WOW64; rv:36.0) Gecko/20100101 Firefox/36.0

Windows NT 6.3 — вид и версия операционной системы компьютера, на котором установлен браузер.
Firefox/36.0 — имя браузера и его версия.

Мобильные браузеры на примере Android 2.3.5 (Philips W632):

Mozilla/5.0 (Linux; U; Android 2.3.5; ru-ru; Philips W632 Build/GRJ90) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1

Linux — тип операционной системы (семейство Linux).
Android 2.3.5 — название операционной системы и ее версия.
ru-ru — язык на мобильном устройстве по умолчанию.
Philips W632 Build/GRJ90 — название и версия мобильного устройства, на котором установлен браузер.

Поисковые системы на примере роботов Яндекс:

Mozilla/5.0 (compatible; YandexBot/3.0; +http://yandex.com/bots)

YandexBot/3.0 — имя и версия робота.
http://yandex.com/bots — ссылка на ресурс, содержащий справку о работе робота.

Утилиты на примере wget (Linux):

Wget/1.15 (linux-gnu)

Wget/1.15 — название и версия программного обеспечения.

Как узнать, от каких User-Agent поступают запросы к вашему сайту?

Информация о поступающих запросах хранится в виде журналов работы веб-сервера. Вы можете включить сохранение журналов веб-сервера в Панели управления аккаунтом хостинга. Перейдите в раздел «Дополнительно» → «Журналы веб-сервера», отметьте домен сайта и нажмите на кнопку «Включить».  После этого журналы веб-сервера начнут сохранятся в папке /logs, находящейся в директории сайта, в указанном примере это директория domains/user-agent.01sh.ru/logs.

Информация о каждом запросе хранится в журнале отдельной строкой, например:

[u][26/Oct/2016:12:42:08 +0300] 0.350 0.350 200 77.88.99.00 sprinthost.ru GET / HTTP/1.1 «Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.71 Safari/537.36» «-» 6756

Разберем подробнее те части записи, которые нас интересуют в контексте статьи.

77.88.99.00 — IP-адрес, с которого поступил запрос.
sprinthost.ru — имя сайта, к которому было направлено обращение.
«Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.71 Safari/537.36» — тот самый User-Agent браузера, который обращался к сайту.

Зачем сайту знать, с каким User-Agent к нему пришли?

Как видно из приведенных выше примеров, по User-Agent очень просто определить, откуда пришел запрос — это может быть компьютер, планшет, мобильное устройство, поисковый робот или некое программное обеспечение.

Информация об источнике запроса может быть необходима для решения следующих задач:

  • перенаправление запросов на мобильную версию;
  • использование специфических стилей для определенных браузеров;
  • сбор статистики о количестве запросов с разных устройств;
  • создание специальных правил для обработки запросов от роботов;
  • запрет доступа к сайту для каких-либо веб-утилит;
  • всякие другие штуки.

Значительная часть перечисленных задач требует опыта разработки скриптов на PHP, но не стоит пугаться — для большинства популярных CMS уже существуют расширения, обладающие необходимыми функциями, и вам достаточно найти подходящий плагин или модуль, чтобы получить желаемый результат.

Мы же подробнее разберем ситуацию, когда требуется запретить доступ к сайту по User-Agent. Чаще всего это необходимо для исключения из индексации поисковыми роботами файлов из определенной директории, блокировки нежелательных роботов, создающих нагрузку на сайте, или же обеспечения безопасности, если к сайту поступает множество подозрительных запросов с различных IP-адресов, но с одинаковым User-Agent. Zeus’ bad_bot Deny from env=bad_bot

запретят доступ для всех перечисленных User-Agent.

Чтобы убедиться в том, что изменения внесены успешно, вовсе не обязательно искать большое количество различных устройств для проверки работы сайта — гораздо удобнее воспользоваться встроенными почти во все современные браузеры функциями подмены User-Agent.

Как заменить User-Agent браузера?

Обычно замена User-Agent применяется, чтобы проверить правила для роботов и утилит.

Не секрет, что каждый из браузеров при формировании страницы сайта обрабатывает полученные с сервера данные особым образом. Соответственно, если в браузере Firefox указать User-Agent браузера Chrome, результат отображения сайта может быть совершенно неожиданным. Об этом обязательно следует помнить. Всегда возвращайте исходное значение User-Agent после завершения тестирования.

Инструкция по замене User-Agent в Mozilla Firefox (для версий 34.0 и выше)

Наберите в адресной строке вашего браузера следующую фразу:

about:config

и нажмите Enter. Если появится сообщение о том, что надо быть осторожным, нажмите кнопку «Я обещаю, что буду осторожен!». После откроется список множества настроек, а также строка поиска. Введите в эту строку:

useragent

Вам необходимо убедиться, что параметра general.useragent.override не существует. Для создания этого параметра кликните правой кнопкой мыши по пустому месту и выберите пункт «Создать (New)», затем «Строка (String)». Введите имя этой строки general.useragent.override, нажмите «ОК». Затем потребуется ввести значение этой строки, которое и будет использоваться в качестве нового User-Agent, и нажать «ОК». К примеру, если вы хотите заменить значение на User-Agent утилиты Wget, после создания строки с именем general.useragent.override укажите в качестве ее значения:

Wget/1.15 (linux-gnu)

Новое значение должно появится в списке параметров. Перезапускать Mozilla Firefox не требуется.

Инструкция по замене User-Agent в Google Chrome (для версий 26. 0.1410.64 и выше)

Чтобы указать для Google Chrome нестандартный User-Agent, его необходимо запустить с ключом

--user-agent=""

и в кавычках указать новую строку User-Agent.

Например, в ОС Windows это можно сделать, нажав сочетание клавиш Win+R и вписав в поле «Открыть» команду:

chrome --user-agent="MyBrowser"

где вместо MyBrowser должен быть указан нужный вам User-Agent.

Например, чтобы присвоить Google Chrome значение User-Agent консольного браузера Links, следует ввести в поле «Открыть» строку

chrome --user-agent="Links (2.8; Linux 3.13.0-24-generic x86_64; GNU C 4.8.2; text)"

и нажать на кнопку «ОК».

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

about:

Информацию о том, как изменить User-Agent других браузеров, можно найти в их документации.

Желаем вам интересных экспериментов!

Что такое пользовательский агент?

Пользовательские агенты используются для различных онлайн-действий. В этой статье мы ответим на вопрос — что такое пользовательский агент? – Кроме того, мы покажем вам, как лучше всего их использовать.

Что такое агент пользователя?

Проще говоря, пользовательский агент — это программа, которая работает от вашего имени. Такое программное обеспечение будет отправлять, получать и отображать веб-контент от вашего имени. Основным примером этого является веб-браузер.

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

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

Найдите идеальный прокси-продукт.

Proxyrack предлагает несколько вариантов для большинства случаев использования, если вы не уверены, что наша 3-дневная пробная версия позволит вам протестировать их все.

Резидентные прокси

Никогда не блокируйтесь, выберите свое местоположение

Посмотреть все доступные варианты
Прокси для центров обработки данных

Супер быстрый и надежный

Посмотреть все доступные варианты
3-дневная пробная версия

Протестировать все продукты, чтобы найти наиболее подходящий

Посмотреть все доступные варианты

Тем не менее, когда люди ссылаются на User Agents, они ссылаются на поле User-agent, содержащееся в заголовках HTTP . Это основная конечная точка для связи между браузерами, программами электронной почты и другими приложениями и веб-серверами.

Веб-браузеры включают поле User-agent в свой HTTP-заголовок перед подключением к какому-либо веб-сайту. Каждый браузер имеет уникальный пользовательский агент, поэтому содержимое для разных браузеров разное. Примечательно, что контент UA сообщит веб-сайту, какой тип браузера и устройства вы используете.

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

Почему агент пользователя важен?

Как упоминалось ранее, пользовательский агент — это программа, которая работает от вашего имени. Следовательно, веб-боты или любые другие боты также являются пользовательскими агентами, поскольку они выполняют задачи от вашего имени. Тем не менее, самое важное — это строка, включенная в заголовки запроса.

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

Некоторые веб-сайты позволяют только определенным пользовательским агентам сканировать свои веб-сайты. Примером могут служить серверы поисковых систем. Если вы не установите UA, будет использоваться пользовательский агент по умолчанию, и, как указано ранее, его можно отследить до вашего бот-сервера, что может привести к тому, что вы попадете в черный список.

Пользовательский агент против прокси

Большинство людей используют пользовательские агенты исключительно для сбора данных с веб-сайтов. Хотя это иногда работает, это не так надежно, как использование прокси. Обычно, если вы собираетесь использовать несколько UA, вам нужно определить разные IP-адреса для всех.

Вы можете получить столько IP-адресов, сколько захотите, через прокси. Кроме того, вы можете пропустить определение отдельных IP-адресов для разных пользовательских агентов, просто используя чередующийся прокси. Многие прокси-серверы изначально поддерживают ротацию строк пользовательского агента.

Если настроено, ваш трафик просмотра будет выглядеть так, как будто он из разных веб-браузеров. Следовательно, у вас меньше шансов быть обнаруженным, и вы не будете заблокированы.

Лучшие прокси для пользовательского агента

Если вы собираетесь использовать пользовательский агент вместе с прокси, важно выбрать лучшие из них. ProxyRack — известный поставщик прокси, у которого вы можете приобрести лучшие прокси агента пользователя.

В ProxyRack вы можете приобрести резидентный прокси или прокси для центра обработки данных. Лучший выбор зависит от того, что вы хотите делать в Интернете. Однако, если вы хотите очистить данные, резидентные прокси — ваш лучший вариант.

Прокси-сеть ProxyRack представляет собой огромную сеть с более чем 5 миллионами жилых IP-адресов и более чем 20 000 IP-адресов центров обработки данных. Вы можете использовать определенные протоколы, такие как прокси-серверы HTTP, HTTPS, SOCKS4, SOCKS4A и SOCKS5. Ознакомьтесь с ценовыми вариантами ниже.

Резидентные прокси

  • Unmetered Residential Proxies: Starting from $80

  • Premium GEO Residential Proxies: Starting from $14.95

  • Private Residential Proxies: Starting from $99.95

Прокси-серверы центров обработки данных

  • США Прокси-серверы центров обработки данных с чередованием : от 120 долларов США

  • Смешанные вращающиеся прокси -прокси : начиная с 120 долл. США

  • . Строка

    Если вам интересно, что такое пользовательские агенты, как они работают и для чего используются, я уверен, что эта статья оказалась для вас полезной.

    Найдите идеальный прокси-продукт.

    Proxyrack предлагает несколько вариантов для большинства случаев использования, если вы не уверены, что наша 3-дневная пробная версия позволит вам протестировать их все.

    Резидентные прокси

    Никогда не блокируйтесь, выберите свое местоположение в наличии

    Связанные статьи

    • Что такое частный прокси?

    • Что такое прокси SwitchyOmega?

    • Что такое Proxifier?

    • что такое приложение Multilogin?

    • что такое SessionBox?

    • Что такое Даше?

    • Что такое VMLogin?

    • Что такое Anti-Detect Browser GoLogin?

    • Что такое Камелео?

    • Что такое FoxyProxy?

    Понимание строки агента пользователя

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

    Эта информация поддерживает множество вариантов использования, включая аналитика и оптимизация веб-сайта, функции безопасности, если ваш пользователь входит на ваш сайт с нового устройства, или адаптация контента специально для используемого устройства (например, мобильного телефона). Все эти варианты использования требуют знания устройство, браузер или операционная система вашего пользователя.

    Один из способов собрать эту информацию — через строку User Agent — тип заголовка HTTP. В течение почти тридцати лет строка агента пользователя была хорошо зарекомендовавшей себя частью Интернета. опыт. Однако Google создал новый HTTP-заголовок для замены строки User Agent: User Agent Client Hints (UA-CH).

    Более подробная информация о клиентских подсказках агента пользователя приведена далее в этом блоге. А пока давайте более подробно разберем строку User Agent.

    Содержание

    Распаковка строки User Agent

    Прочие строки User Agent

    Почему строки User Agent такие?

    Программное обеспечение/операционные системы

    Веб-браузер

    Аппаратное обеспечение устройства

    Краулеры

    Изменение строки агента пользователя

    Будущее строки агента пользователя

    Обнаружение устройства агента пользователя

    Распаковка строки агента пользователя

    Строка агента пользователя (UA) представляет собой тип запроса заголовка HTTP, который содержит информацию о устройство. Например, если вы просматриваете веб-страницы на своем смартфоне, ваше устройство будет отправить заголовок HTTP-запроса на веб-сервер, говоря, что это мобильное устройство. Затем веб-сайт ответит и покажет вам мобильную версию страницы.

    Мы могли бы просто дать вам список строк User Agent и покончить с этим. Но это не особенно хорошо для развития вашего обучения, не так ли?

    Вместо этого давайте рассмотрим несколько примеров пользовательских агентов:

    Mozilla/5.0 (Linux; Android 12; Pixel 6) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/93.0.4577.62 Mobile Safari/537.36

    Mozilla/5.0 появляется в начале большинства строк UA. Его можно в значительной степени игнорировать поскольку он не имеет отношения к связанному устройству. Исторически он использовался для указать совместимость с движком рендеринга Mozilla, частью программного обеспечения который рисует текст и изображения на экране.

    Линукс; Android 12 рассказывает нам подробности об операционной системе. В этом случае Устройство работает под управлением операционной системы Android, в основе которой лежит Linux.

    Для мобильных пользовательских агентов раздел строки Pixel 6 сообщает нам об устройстве. название или номер модели устройства. В данном случае этот пользовательский агент пришел из Google Телефон пиксель 6. В других случаях (например, для настольного устройства Windows) элемент строки может определять архитектуру устройства.

    AppleWebKit/537.36 указывает, какой механизм рендеринга браузера используется. Рендеринг Engine — это то, что превращает HTML в интерактивную веб-страницу на экране пользователя. Браузерный движок WebKit был разработан Apple и в основном используется Safari, Chromium и все другие браузеры на основе WebKit.

    (KHTML, как Gecko). Этот раздел строки не обязательно предоставляет больше подробно на устройстве, но обеспечивает совместимость по историческим причинам. Проверить история пользовательского агента руководство по строкам от Human Who Codes для более подробной информации.

    И, наконец, Chrome/93.0.4577.62 Mobile Safari/537.36 содержит более подробную информацию о Браузер и номер его версии. В этом примере агента пользователя устройство использует мобильная версия Chrome, версия 93.

    Итак, различные разделы этой строки User Agent Chrome:

    Mozilla/5.0 (Linux; Android 12; Pixel 6) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/93.0.4577.62 Mobile Safari/537.36

    Давайте посмотрим на другой пример, на этот раз это пользовательский агент Firefox:

    Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:94.0) Gecko/20100101 Firefox/94.0

    Пользователь Firefox Агенты, как правило, используют четырехкомпонентный формат, тогда как пользовательские агенты Chrome могут включать больше строковых элементов. В приведенном выше случае движком рендеринга является Gecko, а rv:94.0 это номер его версии. Win64; x64 указывает, что устройство использует 64-разрядная версия Windows с архитектурой компьютера x64.

    Почему строки User Agent такие?

    Части строки пользовательского агента Mozilla/5.0 и (KHTML, например, Gecko) могут быть игнорируются, но почему они были включены в первую очередь?

    Изначально строка агента пользователя не создавалась для того, чтобы сбивать с толку, но она была необходимым злом для обеспечения совместимости между новыми и старыми браузерами. Чтобы новые браузеры получили свой кусок пирога на рынке браузеров, они должны убедиться, что они не исключено, потому что они новые.

    Например, в блоке есть новый браузер под названием «VeryNewBrowser». Строка вашего пользовательского агента содержит информацию о том, что вы используете VeryNewBrowser для доступа к веб-сайту. Многие сайты (неправильно!) увидят, что VeryNewBrowser не является PopularBrowser, поэтому предоставят вам дрянную версию веб-сайта.

    Чтобы противодействовать этому, строка User Agent может содержать «PopularBrowser (фактически VeryNewBrowser)» который обманывает веб-сервер, заставляя его думать, что вы используете PopularBrowser.

    Это добавление к строке агента пользователя продолжается много-много лет, пока в конце концов вы не окажетесь там, где мы находимся сегодня. Все утверждают, что это Mozilla 5.0; Android Chrome претендует на звание Mobile Safari; Mobile Safari утверждает, что это Gecko. Это может стать очень запутанным, очень быстро. Посетите блог WebAIM для получения дополнительной информации об истории совместимости строки агента пользователя.

    Другие строки агента пользователя

    Агенты пользователя не обязательно имеют один и тот же формат. Вы можете увидеть строку, которая выглядит следующим образом:

    Dalvik/2.1.0 (Linux; U; Android 9.0; ZTE BA520 Build/MRA58K)

    Выглядит страшно, правда? Но когда вы начинаете смотреть глубже, вы можете видеть, что это Android-телефон ZTE. Чтобы получить больше информации, вы можете запустить строку UA через наш парсер агента пользователя, и он расшифрует остальное!

    Важно отметить, что не всегда легко обнаружить устройство. За Например, пользовательские агенты iPad или iPhone не всегда содержат много информации о Устройство. Кроме того, с каждым выпуском нового устройства Apple оно получает труднее идентифицировать между последними устройствами.

    Apple — единственный производитель мобильных операционных систем, который активно скрывает информация о модели устройства. С выходом iOS 12.2, Apple изменила значения, возвращаемые из WebGL, чтобы предотвратить точное определение iPhone. или модель iPad устройства iOS, полученная в JavaScript.

    В следующем пользовательском агенте мы можем только определить, что это Устройство iPhone — мы не можем определить точную модель устройства.

    Mozilla/5.0 (iPhone; ЦП iPhone OS 12_1, например Mac OS X) AppleWebKit/605.1.15 (KHTML, как Gecko) Версия/12.1 Mobile/15E148 Safari/604.1

    Наше средство обнаружения устройств извлекает строку из идентификации устройств из пользовательского агента. струны. С момента выпуска iOS 12.2 мы обновили обнаружение устройств с помощью двухкомпонентное решение для идентификации Apple устройства: хеширование изображений и бенчмаркинг.

    Проверьте идентификацию нашего устройства с помощью пользовательского агента iPhone. Что ж возьмите строку и покажите, какую информацию мы можем извлечь из нее.

    Тестер User Agent

    Программное обеспечение/операционные системы

    Давайте поговорим о разделе операционных систем (ОС) строки UA. Некоторые из основным программным обеспечением ОС, используемым различными устройствами, являются Android, Windows и Chrome OS. (настольная ОС на базе Linux, разработанная Google).

    Для устройств Apple у нас есть iOS, iPadOS, macOS (ранее Mac OS X и более поздние версии ОС). X), tvOS и watchOS. Вы также можете включить Дарвина в этот список, так как он Unix-подобная операционная система с открытым исходным кодом, впервые выпущенная Apple в 2000 году. факт: Дарвин формирует базовый набор компонентов, на основе которого работает другая ОС Apple. программное обеспечение построено на.)

    В строке UA вы можете найти информацию как об операционной системе, так и его номер версии. Каждый поставщик программного обеспечения определяет свою собственную систему нумерации, а также является ли каждый выпуск второстепенным или основным приращением.

    Кажется простым, но не думайте, что поставщик программного обеспечения всегда будет следовать одному и тому же шаблон для нового выпуска — иногда могут измениться соглашения или номера версий пропускаются. И если этого было недостаточно, пользовательские агенты не всегда представляют имя браузера и номер версии согласованным образом.

    Чтобы поддерживать работоспособность нашей базы данных строк агента пользователя, мы регулярно сопоставляем новых пользователей. Агенты, особенно при наличии новых версий ОС, которые недавно были вышел. Крайне важно, чтобы мы предоставляли нашим клиентам наиболее точную и актуальная база данных User Agent.

    Веб-браузер

    Строка UA также содержит информацию о типе используемого веб-браузера устройством. Одними из наиболее известных веб-браузеров являются Chrome, Safari, Эдж, Фаерфокс и Опера.

    Как и поставщики программного обеспечения, каждый поставщик браузера (например, Google для Chrome и Mozilla для Firefox) определяет собственную систему нумерации. Версии браузера могут быть представлены в строке на разных стадиях цикла разработки. За например, строка UA может содержать браузер в бета-версии, canary или стадия разработчика.

    Опять же, имя браузера и номер версии не всегда представлены в последовательным образом. Например, давайте посмотрим на этот распространенный пользовательский агент Android:

    Mozilla/5.0 (Linux; Android 10; POT-LX1) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/95.0.4621.2 Mobile Safari/537.36

    На первый взгляд, вы можете посмотреть на эту строку UA и предположить, что поставщик браузера Mozilla или даже Safari на мобильных устройствах (благодаря Mozilla/5.0’ и Mobile Safari/537.36 части строки). На самом деле, для этой строки браузер Версия Chrome 95.0.4621.2. Стоит замедлиться и тщательно проанализировать UA нить!

    Если у вас возникнут сомнения относительно того, какая информация содержится в строке UA, мы рекомендуем обратиться к нашему агенту пользователя тестер, чтобы сделать весь жесткий анализ для вас.

    Аппаратное обеспечение устройства

    В строке UA присутствует ключевой элемент, который можно использовать для обнаружения Устройство. Этот элемент детализирует, является ли физическое устройство, которое обращается к веб-сайт представляет собой мобильный телефон, планшет, электронную книгу, смарт-телевизор или игровую приставку (для имя, но несколько).

    Например, строка UA ниже говорит нам, что устройство модели 2018 года. Samsung Galaxy J7:

    Mozilla/5.0 (Linux; Android 8.0.0; SAMSUNG SM-J737F) AppleWebKit/537.36 (KHTML, например Gecko) SamsungBrowser/14.0 Chrome/87.0.4280.141 Mobile Safari/537.36

    , иногда

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

    Mozilla/5.0 (Linux; Android 9; S20_EEA Build/PPR1.180610.011; wv) AppleWebKit/537.36 (KHTML, как Gecko) Версия/4.0 Chrome/95.0.4638.74 Safari/537.36

    В этом UA единственной предоставляемой информацией об устройстве является «S20». Что могло обратитесь к любому из этих поставщиков оборудования:

    • Samsung Galaxy S20

    • ЗАВОЕВАНИЕ S20

    • Сахар S20

    • XGODY S20

    Искатели

    Строки агента пользователя не всегда связаны с физическим устройством. Иногда они представляют собой нечто, называемое краулером.

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

    Краулеры имеют много названий — боты, роботы, пауки, зонды, мониторы — но они как правило, их легко обнаружить, и они не обязательно вредны для вашего веб-сайта.

    Хороший краулер с гордостью называет себя краулером, часто включая слово «бот». в какой-то момент в строке UA:

    Mozilla/5.0 (совместимо; bingbot/2.0; +http://www.bing.com/bingbot.htm)

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

    Недавно мы создали метод для фильтрации этих вредоносных сканеров с нашего веб-сайта. аналитические отчеты. Узнайте, как вы можете использовать информацию строки агента пользователя для найти эти вредоносные гусеницы.

    Изменение строки вашего пользовательского агента

    Давайте поговорим подробнее о спуфинге пользовательского агента, как упоминалось выше. Агент пользователя спуфинг можно свести к замене символов в строке вашего пользовательского агента любым из нескольких символов на всю строку.

    Изменить строку UA на удивление легко — вы можете сменить браузер Пользовательский агент, нажав F12 на клавиатуре, чтобы открыть отладку вашего браузера. инструмент. Кроме того, в большинстве основных браузеров есть плагины, которые могут подделать для вас UA. Найдите «Переключатель агента пользователя» или «Переключатель агента пользователя» в вашем браузере. плагины и надстройки, чтобы увидеть, что доступно.

    Одним из преимуществ подмены строки UA является то, что вы можете проверить свой веб-сайт на различные устройства. Легко изменить строку с рабочего стола на мобильный. Однако есть более надежные способы проверить ваш сайт на мобильность. дружелюбие (ознакомьтесь с нашей статьей о мобильных эмуляторы, чтобы узнать больше).

    Доступность спуфинга агента пользователя отлично подходит для скромного пользователя, который просто хочет протестировать свой сайт на другом устройстве. Но в руках а вредоносный сканер, наличие поддельной строки User Agent может изменить точность обнаружение устройства.

    Когда изменяется вся строка, может быть почти невозможно определить, строка принадлежит реальному устройству или нет. Однако, когда только часть строка изменена, все еще возможно обнаружить устройство с удовлетворительным уровнем точности.

    Например, возьмем этот поддельный агент пользователя:

    Mozilla/5.0 (Linux;Android 3.1ipad 4 Build/AppleWebKit Gecko) Version/4.0 Safari/534

    В этой строке содержится противоречивая информация, так как она содержит и айпад. Пользовательский агент iPad имеет тенденцию следовать формату Mozilla/5.0. (iPad… , что здесь не так. Следовательно, вы можете сделать вывод, что это Android-устройство, а не iPad.

    Будущее строки User Agent

    Из этой статьи видно, что мы хорошо разбираемся в обнаружении информация из строки агента пользователя.

    Однако перемены не за горами. Альтернатива Google Запрос HTTP-заголовка агента пользователя, подсказки клиента агента пользователя (UA-CH), за счет уменьшения UA string на всех устройствах Chrome во втором квартале 2022 года. Планируется, что сокращение будет реализовано в браузере Chrome. минорные версии.

    Подсказки клиента агента пользователя анализируют информацию об устройстве аналогично строке агента пользователя, но часто включают дополнительные информация в ответе, такая как Sec-CH-UA-Platform или Sec-CH-UA-Mobile.

    Это одностороннее изменение, продвигаемое только одной компанией, вынудило другие адаптироваться, независимо от того, хотят они того или нет. Не все клиентские подсказки агента пользователя отправляются по умолчанию, поэтому владельцам веб-сайтов потребуется выполнить дополнительную работу, чтобы адаптироваться к переменам. Некоторые неизбежно будут тянуть пятки, что может привести к поломке их веб-сайта.

    Лучший способ подготовиться в ближайшие несколько месяцев — обновить свой услуги по поддержке UA-CH.

    Версия 4 нашего средства обнаружения устройств была обновлена ​​для поддержки UA-CH обнаружение.

    Не попадайтесь в ловушку, когда пользовательский агент сокращается в пользу пользовательского агента Советы для клиентов — зарегистрируйтесь на версию 4 нашего решения сегодня.

    Обнаружение устройства агента пользователя

    Цель сбора строковых данных агента пользователя от ваших пользователей позволяет вам получить более полное представление об их характеристиках. Если вы обнаружите, что 80% вашего посетители веб-сайта используют мобильные устройства, вам, вероятно, следует обратить внимание на мобильную оптимизацию вашего веб-сайта.

    Существует так много причин использовать пользовательские агенты для обнаружения устройств в таких отраслях, как AdTech, Электронная коммерция и цифровые публикации. Узнайте, как компаниям нравится ваши преуспели с нашими службами данных в реальном времени.

    Начало работы с Device Detection

    Агент пользователя для веб-скрейпинга

    Использование правильного агента пользователя при выполнении задач очистки данных имеет решающее значение для вашего успеха в сборе целевых данных, избегая блокировки. Это единственное руководство, которое вам понадобится для начала работы.

    Джош Вандервиллик | Менеджер по продукту

    03 декабря 2020

    В этом посте вы узнаете:

    • Что такое пользовательский агент?
    • Зачем использовать пользовательский агент?
    • Советы, как избежать блокировки пользовательского агента при парсинге

    Что такое пользовательский агент?

    Термин относится к любой части программного обеспечения, которое облегчает взаимодействие конечного пользователя с веб-контентом. Строка пользовательского агента (UA) — это текст, который программное обеспечение клиентского компьютера отправляет через запрос.

    Строка пользовательского агента помогает целевому серверу определить, какой браузер, тип устройства и операционная система используются. Например, строка сообщает серверу, что вы используете браузер Chrome и Windows 10 на своем компьютере. Затем сервер может использовать эту информацию для настройки ответа в зависимости от типа устройства, ОС и браузера.

    Большинство браузеров отправляют заголовок пользовательского агента в следующем формате, хотя в выборе пользовательских агентов нет особой последовательности:

     Mozilla/5.0 (совместимый; Googlebot/2.1; +http://www.google.com/bot. html)

    Вы можете узнать больше о различных строках, которые вы можете использовать для браузера Mozilla, на их «>сайте для разработчиков.

    Ниже вы можете найти примеры с сайта разработчика Chrome того, как формат строки UA выглядит для разных устройств и браузеров:

    Chrome для Android

    Телефон UA:
      Mozilla/5. 0 (Linux; ; )AppleWebKit/ (KHTML, например Gecko) Chrome/Mobile Safari/
    Tablet UA:
    Mozilla/5.0 (Linux; ; )AppleWebKit/(KHTML, например Gecko) Chrome/Safari/

    Включите автопилот прямо сейчас!

    Зачем использовать пользовательский агент?

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

    Вы можете подумать, что правильным решением будет не включать пользовательский агент в ваши запросы. Однако это приводит к тому, что инструменты используют UA по умолчанию. Во многих случаях целевой веб-сервер заносит его в черный список и блокирует.

    Итак, как вы гарантируете, что ваш пользовательский агент не будет забанен?

    Советы, как избежать блокировки вашего UA при парсинге:

    #1: Используйте настоящий пользовательский агент

    Если ваш пользовательский агент не принадлежит основному браузеру, некоторые веб-сайты будут блокировать его запросы. Многие веб-скраперы на основе ботов пропускают этап определения UA, в результате чего их обнаруживают и блокируют за отсутствие неправильного/по умолчанию UA.

    Вы можете избежать этой проблемы, настроив широко используемый UA для вашего поискового робота. Вы можете найти большой список популярных пользовательских агентов здесь. Вы можете составить список популярных строк и чередовать их, выполнив запрос cURL для веб-сайта. Тем не менее, мы рекомендуем использовать пользовательский агент вашего браузера, потому что поведение вашего браузера, скорее всего, будет соответствовать тому, что ожидается от пользовательского агента, если вы не измените его слишком сильно.

    #2: Ротация пользовательских агентов

    Когда вы делаете многочисленные запросы во время просмотра веб-страниц, вы должны рандомизировать их. Это сведет к минимуму вероятность того, что веб-сервер идентифицирует и заблокирует ваши UA.

    Как рандомизировать запросы?

    Одним из решений может быть изменение IP-адреса запроса с использованием чередующихся прокси. Таким образом, вы каждый раз отправляете разные наборы заголовков. Со стороны веб-сервера это будет выглядеть так, как будто запрос поступает с разных компьютеров и из разных браузеров.

    Совет для профессионалов: Пользовательский агент — это заголовок, но заголовки включают в себя гораздо больше, чем просто пользовательские агенты. Вы не можете просто отправлять случайные заголовки, вам нужно убедиться, что отправляемый вами пользовательский агент соответствует заголовкам, которые вы отправляете.

    Вы можете использовать botcheck.luminatio.io, чтобы проверить, соответствуют ли отправляемые вами заголовки тому, что ожидается для пользовательского агента.

    Как чередовать пользовательские агенты

    Во-первых, вам нужно собрать список строк пользовательских агентов. Мы рекомендуем использовать строки из реальных браузеров , , которые можно найти здесь . Следующий шаг — добавление строк в список Python. И, наконец, определение того, что каждый запрос выбирает случайную строку из списка.

    Вы можете увидеть пример того, как чередовать пользовательские агенты с помощью Python 3 и Selenium 4 в этом обсуждении переполнения стека. Пример кода выглядит так:

    Какую бы программу или метод вы ни выбрали для чередования заголовков ПА, вы должны следовать одним и тем же методам, чтобы избежать обнаружения и блокировки:

    • #1: Чередуйте полный набор заголовков, связанных с каждым ПА
    • #2: Отправлять заголовки в том порядке, в котором их обычно использует настоящий браузер
    • #3: Используйте предыдущую страницу, которую вы посетили, в качестве «заголовка реферера»

    Совет для профессионалов: Вы должны убедиться, что IP-адрес и файлы cookie не изменяются при использовании заголовка реферера. В идеале вы действительно должны посетить предыдущую страницу, чтобы на вашем целевом сервере была запись о ней.

    #3: Ротация агентов с использованием прокси-сервера

    Вы можете избежать головной боли и хлопот, связанных с ручным определением списков и ротацией IP-адресов, используя ротационную сеть прокси. Прокси имеют возможность настроить автоматическую ротацию IP и ротацию строк UA. Это означает, что ваши запросы выглядят так, как будто они исходят из различных веб-браузеров. Это значительно уменьшает количество блокировок и увеличивает вероятность успеха, поскольку запросы исходят от реальных пользователей сети. Имейте в виду, что только очень определенные прокси-серверы, использующие технологию разблокировки данных, могут правильно управлять вашими пользовательскими агентами и менять их.

    Получить доступ к технологии разблокировки данных

    Список пользовательских агентов для парсинга

    эмулировать различные браузеры, используя такие инструменты, как wget и cURL. К ним относятся:

    • Lynx: Lynx/2.8.8pre.4 libwww-FM/2.14 SSL-MM/1.4.1 GNUTLS/2.12.23
    • Результат: Wget/1.15 (линукс-гну)
    • Завиток: Завиток/7.35.0
    •  
    • HTC: Mozilla/5.0 (Linux; Android 7.0; HTC 10 Build/NRD90M) AppleWebKit/537.36 (KHTML, как Gecko) Chrome/58.0.3029.83 Mobile Safari/537.36
    • Google Nexus: Mozilla/5.0 (Linux; U; Android-4.0.3; en-us; Galaxy Nexus Build/IML74K) AppleWebKit/535.7 (KHTML, как Gecko) CrMo/16.0.912.75 Mobile Safari/535.7
    • Samsung Galaxy Note 4: Mozilla/5.0 (Linux; Android 6.0.1; SAMSUNG SM-N910F Build/MMB29M) AppleWebKit/537.36 (KHTML, как Gecko) SamsungBrowser/4.0 Chrome/44.0.2403.133 Mobile Safari/537.36

    •  
    • Samsung Galaxy Note 3: Mozilla/5. 0 (Linux; Android 5.0; SAMSUNG SM-N900 Build/LRX21V) AppleWebKit/537.36 (KHTML, как Gecko) SamsungBrowser/2.1 Chrome/34.0.1847.76 Mobile Safari6/930006
    • Телефон Samsung: Mozilla/5.0 (Linux; Android 6.0.1; SAMSUNG SM-G570Y Build/MMB29K) AppleWebKit/537.36 (KHTML, как Gecko) SamsungBrowser/4.0 Chrome/44.0.2403.133 Safari6/5 993 Mobile Safari6/5
    • Поисковый бот Bing: Mozilla/5.0 (совместимый; bingbot/2.0; +http://www.bing.com/bingbot.htm)
    • Поисковый робот Google: Mozilla/5.0 (совместимый; Googlebot/2.1; +http://www.google.com/bot.html)
    • Apple iPhone: Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_1, например Mac OS X) AppleWebKit/603.1.30 (KHTML, например Gecko) Version/10.0 Mobile/14E304 Safari/602.1
    •  
    • Apple iPad: Mozilla/5. 0 (iPad; CPU OS 8_4_1, как Mac OS X) AppleWebKit/600.1.4 (KHTML, как Gecko) Версия/8.0 Mobile/12h421 Safari/600.1.4
    • Microsoft Internet Explorer 11 / IE 11: Mozilla/5.0 (совместимый, MSIE 11, Windows NT 6.3; Trident/7.0; rv:11.0), как Gecko
    • Microsoft Internet Explorer 10 / IE 10: Mozilla/5.0 (совместимый; MSIE 10.0; Windows NT 6.2; Trident/6.0; MDDCJS)
    •  
    • Microsoft Internet Explorer 9 / IE 9: Mozilla/5.0 (совместимый; MSIE 9.0; Windows NT 6.0; Trident/5.0; Trident/5.0)
    • Microsoft Internet Explorer 8 / IE 8: Mozilla/4.0 (совместимый; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)
    • Microsoft Internet Explorer 7 / IE 7: Mozilla/5.0 (Windows; U; MSIE 7. 0; Windows NT 6.0; en-US)
    • Microsoft Internet Explorer 6 / IE 6: Mozilla/4.0 (совместимый; MSIE 6.0; Windows NT 5.1; SV1)
    • Microsoft Edge: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/51.0.2704.79 Safari/537.36 Edge/14.14393
    • Mozilla Firefox: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:53.0) Gecko/20100101 Firefox/53.0
    • Google Chrome: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/58.0.3029.110 Safari/537.36

    Суть

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

    Наиболее распространенные пользовательские агенты и их значение для парсинга веб-страниц

    Когда вы вводите поисковый запрос в браузере, вы можете не знать о многих действиях, происходящих в фоновом режиме. Одной из таких вещей является пользовательский агент, который ваш браузер отправляет на каждый веб-сайт, к которому вы подключаетесь.

    В своей простейшей форме агент пользователя представляет собой строку текста или строку, которая идентифицирует браузер для веб-сервера. Хотя это может показаться простым, понимание того, как работают пользовательские агенты, может быть немного сложным. Всякий раз, когда браузер подключается к веб-сайту, он имеет поле для пользовательского агента в заголовке HTTP. Содержимое этого поля отличается для каждого браузера. Таким образом, каждый браузер имеет отдельный пользовательский агент.

    По сути, пользовательский агент — это метод, с помощью которого ваш браузер представляет себя веб-серверу. Думайте об этом как о веб-браузере, говорящем «Привет, я веб-браузер» веб-серверу. Веб-сервер использует эту информацию и обслуживает различные операционные системы, веб-страницы или веб-браузеры.

    В этом руководстве подробно рассматриваются пользовательские агенты и их типы, а также обсуждаются наиболее распространенные пользовательские агенты и роль, которую они играют в веб-скрапинге.

    Что такое пользовательский агент?

    Пользовательский агент — это программное обеспечение, которое отображает, облегчает и извлекает веб-контент для конечных пользователей. К ним относятся медиаплееры, подключаемые модули и веб-браузеры. Семейство пользовательских агентов также включает бытовую электронику, автономные приложения и оболочки операционных систем.

    Не каждое программное обеспечение может быть агентом пользователя. Согласно Wiki, он должен соответствовать определенным условиям.

    Программное обеспечение является основным агентом пользователя, если:

    • Это автономное приложение.
    • Интерпретирует язык W3c.
    • Он интерпретирует декларативный или процедурный язык, который используется для предоставления пользовательского интерфейса.

    Программное обеспечение является расширением пользовательского агента, если: 

    • Оно расширяет функциональные возможности основного пользовательского агента или запускается им.

    Между тем, программное обеспечение является веб-агентом пользователя, если: 

    • Декларативный или процедурный язык интерпретируется для создания пользовательского интерфейса.
    • Интерпретация была выполнена расширением агента пользователя или основным агентом пользователя.
    • Взаимодействие с пользователем не изменяет объектную модель документа (DOM) содержащего документа.

    Что такое пользовательский агент в браузере?

    Как обсуждалось ранее, когда браузер подключается к любому веб-сайту, в заголовке HTTP есть поле пользовательского агента. Каждый браузер имеет разное содержимое в этом поле. По сути, этот контент знакомит браузер с веб-сервером.

    В дальнейшем веб-сервер может использовать эту информацию для определенных задач. Например, веб-сайт может использовать эту информацию для передачи мобильных страниц в мобильные браузеры. Он также может отправить сообщение «обновить» до более старой версии Internet Explorer.

    Давайте посмотрим на наиболее распространенные пользовательские агенты в браузерах и что означает эта информация. Вот пользовательский агент Firefox в Windows 7:

    Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0

    Если вы посмотрите на этот пользовательский агент, вы заметите, что он предоставляет веб-серверу много информации. Он показывает кодовое имя Windows NT 6.1, что указывает на то, что Windows 7 является операционной системой.

    Также отображается код WOW64, указывающий на то, что браузер работает в 64-разрядной версии Windows. Наконец, он показывает, что используется браузер Firefox 12.  

    Теперь, когда у вас есть базовые представления о пользовательском агенте, вот пример Internet Explorer 9: 

    Mozilla/5.0 (совместимый; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)

    Хотя остальная информация понятна, смущает то, что пользовательский агент идентифицируется как Mozilla. Чтобы понять это полностью, вам также нужно взглянуть на пользовательский агент для Chrome:

    Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.5 (KHTML, например Gecko) Chrome/19.0.1084.52 Safari/536.5

    Это может быть еще более запутанным, поскольку Chrome показывает себя как Safari и Mozilla. Почему это? Глубокое погружение в историю браузеров и пользовательских агентов поможет вам понять это.

    Беспорядок строк пользовательских агентов

    Одним из первых используемых браузеров был Mosaic. Пользовательский агент Mosaic был просто NCSA_Mosaic/2.0. Позже, когда была представлена ​​Mozilla, у нее был пользовательский агент: Mozilla/1. 0.

    Поскольку Mozilla поддерживала фреймы, она была более продвинутой, чем Mosaic, как браузер. Поэтому, когда веб-серверы получали пользовательские агенты, они отправляли страницы с фреймами тем, которые содержат слово «Mozilla».

    Другим веб-сервер отправлял более старые страницы, не содержащие фреймов. Со временем Microsoft представила Internet Explorer. Поскольку это был современный браузер, он также поддерживал фреймы. Однако Internet Explorer не получал веб-страницы, содержащие фреймы, потому что веб-серверы отправляли их все в Mozilla. Microsoft исправила эту проблему, добавив «Mozilla» в пользовательский агент Internet Explorer.

    Они также добавили некоторую дополнительную информацию, такую ​​как ссылка на Internet Explorer и слово «совместимый». Когда веб-серверы видели слово «Mozilla» в пользовательском интерфейсе, они также отправляли страницы с веб-фреймами в Internet Explorer. По мере появления других браузеров, таких как Chrome и Safari, они использовали тот же подход. Таким образом, вы увидите имена других браузеров в пользовательском интерфейсе отдельного браузера.

    Некоторые веб-серверы также начали искать слово «Gecko» в пользовательском агенте, который является механизмом рендеринга Firefox. Веб-серверы будут отправлять разные страницы в браузеры Gecko по сравнению со старыми браузерами. KHTML начал добавлять «like Gecko» и подобные слова в свои пользовательские агенты, чтобы получать современные страницы с фреймами с веб-серверов. В конце концов, WebKit был представлен. Поскольку он был основан на KHTML, он также содержал «KHTML, как Gecko» и «WebKit».

    Разработчики сделали это для обеспечения совместимости. Таким образом, разработчики браузеров добавили в пользовательские агенты больше слов, чтобы сделать их совместимыми со стандартом и убедиться, что они получают современные страницы с веб-сервера. Вот почему пользовательские агенты сегодня намного длиннее, чем в прошлом. Суть в том, что веб-серверы не заботятся о точной строке пользовательских агентов — они просто ищут определенные слова.

    Список наиболее распространенных пользовательских агентов

    Ниже мы перечислили наиболее распространенные пользовательские агенты. Если вы хотите эмулировать другой браузер, вы можете использовать его вместо переключателя пользовательского агента.

    • Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/58.0.3029.110 Safari/537.36
    • Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:53.0) Gecko/20100101 Firefox/53.0
    • Mozilla/5.0 (совместимый; MSIE 9.0; Windows NT 6.0; Trident/5.0; Trident/5.0)
    • Mozilla/5.0 (совместимый; MSIE 10.0; Windows NT 6.2; Trident/6.0; MDDCJS)
    • Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, например Gecko) Chrome/51.0.2704.79Сафари/537,36 край/14,14393
    • Mozilla/4.0 (совместимый; MSIE 6.0; Windows NT 5.1; SV1)

    Почему пользовательские агенты важны?

    Пользовательские агенты необходимы, поскольку они отличают браузеры друг от друга. Как только веб-сервер идентифицирует пользовательский агент, начинается согласование содержимого. Процесс относится к механизму в HTTP, который позволяет предоставлять разные версии ресурса через один и тот же URL-адрес.

    Проще говоря, когда вы вводите URL-адрес, веб-сервер проверяет пользовательский агент и показывает вам соответствующую веб-страницу. Вам не нужно вводить другой URL-адрес при доступе к веб-сайту с мобильного устройства. Точный URL-адрес показывает вам разные версии веб-страницы на разных устройствах.

    Согласование содержимого широко применяется при отображении форматов изображений. Изображение предоставляется в форматах PNG и GIF. Однако версия GIF отображается пользователям более старых версий MS Internet Explorer, которые не могут отображать изображения PNG. Между тем изображения PNG отображаются в современных браузерах. Точно так же веб-сервер может отображать различные таблицы стилей, такие как JavaScript и CSS, в зависимости от возможностей используемого вами браузера. Более того, если пользовательский агент также имеет информацию о языковых настройках, будет отображаться соответствующая версия.

    Например, медиаплеер позволяет воспроизводить видео, а программа для чтения PDF-файлов обеспечивает доступ к PDF-документам. Однако программа для чтения PDF не открывает файлы MS Word, поскольку не распознает информацию.

    Доставка имени агента

    Доставка имени агента — это процесс, в котором приложение получает содержимое, настроенное в соответствии с пользовательским агентом. Поисковая оптимизация (SEO) использует этот процесс для отображения разного контента агентам пользователей реальных посетителей и ботов.

    В ходе этого процесса, называемого маскировкой, обычные посетители видят версию веб-страницы, оптимизированную для использования человеком. Тем временем сканеры видят структуру и контент веб-сайта, оптимизированные для простоты и высокого рейтинга в результатах поисковой системы.

    Переключение агента пользователя

    При просмотре и просмотре веб-страниц могут возникнуть разные причины, по которым вы можете захотеть изменить свой агент пользователя. Это называется переключением агента пользователя. Позже мы углубимся в эти особенности.

    Типы пользовательских агентов

    Браузеры являются типичным примером пользовательских агентов, но многие другие приложения могут действовать как пользовательские агенты.

    Различные пользовательские агенты включают:

    • Поисковые роботы 
    • SEO-инструменты
    • Устройство для проверки звеньев
    • Устаревшие операционные системы
    • Игровые приставки
    • Веб-приложения, такие как программы для чтения PDF, медиаплееры и потоковые порталы 

    Люди не обязательно контролируют все пользовательские агенты. Некоторые пользовательские агенты автоматически контролируются веб-сайтами. Одним из таких примеров являются сканеры поисковых систем.

    Варианты использования пользовательских агентов

    Веб-серверы используют пользовательские агенты для различных целей. Вот некоторые из них: 

    Обслуживание веб-страниц: Просматривая информацию в пользовательском агенте, веб-сервер определяет, какую веб-страницу он должен обслуживать для веб-браузера. Некоторые веб-страницы открываются для старых браузеров, а другие — для современных. Например, если вы когда-либо видели сообщение типа «Эта страница должна быть просмотрена в Internet Explorer», это связано с различием в пользовательском агенте.

    Обслуживающие операционные системы:  Веб-серверы также используют пользовательские агенты для отображения разного контента для каждой операционной системы. Например, когда вы видите одну и ту же веб-страницу на экране мобильного телефона и ноутбука, они выглядят по-разному. Одной из причин этого является пользовательский агент. Если веб-сервер получает запрос от мобильного устройства, это будет указано в пользовательском агенте. Затем веб-сервер отобразит уменьшенную страницу, которая помещается на экране мобильного устройства.

    Статистический анализ:  Веб-серверы также используют пользовательские агенты для сбора статистики об операционных системах и браузерах своих пользователей. Вы когда-нибудь видели статистику, показывающую, что Chrome используется больше, чем Safari, или что определенный процент людей теперь выходит в Интернет с помощью своих мобильных устройств? Так усваивается эта информация.  

    Сканирование веб-страниц с помощью пользовательских агентов

    Боты для сканирования веб-страниц также используют пользовательские агенты. Пользовательский агент наиболее часто используемого поискового робота: 

    Браузерные боты

    Веб-серверы относятся к ботам по-особому. Например, иногда им разрешается проходить через экраны регистрации без фактической регистрации. Иногда вы можете обойти эти экраны, если вы настроите свой пользовательский агент на агент бота поисковой системы.

    Точно так же веб-серверы могут отдавать приказы ботам через файл robots.txt. Этот файл сообщает вам правила сайта и указывает, что не разрешено, например, если определенные данные или страницы нельзя очистить. Например, веб-сервер может сказать боту уйти. Он также может сообщить боту, что он может индексировать только определенный раздел веб-сайта. Веб-сервер идентифицирует ботов по строкам их пользовательского агента в файле robots.txt.

    В основных браузерах часто есть способы установить собственный пользовательский агент. С помощью переключения пользовательского агента вы можете проверить, как веб-серверы реагируют на пользовательский агент каждого браузера. Например, вы можете установить пользовательский агент вашего настольного браузера на мобильный браузер.

    Это позволит вам увидеть, как веб-сервер отображает веб-страницу на мобильных устройствах. Но помимо использования пользовательского агента, вам также необходимо чередовать их, чтобы убедиться, что вы не заблокированы.

    Как чередовать пользовательские агенты?

    Для ротации пользовательских агентов вы должны собрать список строк пользовательских агентов. Вы можете получить эти строки из реальных браузеров. После этого добавьте эти строки в список Python.

    Наконец, определите, что каждый запрос должен выбирать случайную строку из этого списка. Вот пример того, как выглядит код для ротации пользовательских агентов в Selenium 4 и Python 3: 

    Хотя это всего лишь один из способов ротации пользовательских агентов, вы также можете использовать другие методы. Однако в каждом методе необходимо следовать определенным приемам: 

    • Убедитесь, что вы меняете полный набор заголовков, связанных с каждым пользовательским агентом.
    • Отправлять заголовки в том же порядке, что и настоящий браузер.
    • Используйте ранее посещенную страницу в качестве «заголовка реферера».

    При использовании заголовка реферера убедитесь, что файлы cookie и IP-адреса не меняются. В качестве альтернативы, если вы хотите избежать головной боли, вы можете использовать прокси, который меняет пользовательские агенты для вас.

    Таким образом, вам не придется вручную менять пользовательские агенты для каждого запроса. Прокси-серверы могут настроить автоматическую ротацию строк агента пользователя и ротацию IP-адресов. Таким образом, будет казаться, что запросы поступают из нескольких веб-браузеров.

    Уменьшает ваши шансы быть заблокированным и повышает вероятность успеха. Rayobyte предоставляет различные типы прокси-серверов, включая интернет-провайдеров, прокси-серверы для центров обработки данных и резидентные прокси-серверы, которые помогут вам выполнить это без ручных усилий и хлопот.

    Зачем менять свой пользовательский агент?

    Как упоминалось выше, вы можете изменить строку пользовательского агента, чтобы заставить браузер поверить, что вы используете другое устройство. Но зачем тебе это? Вот несколько способов, которыми переключение пользовательского агента может вам помочь.

    Разработка веб-сайта 

    При разработке веб-сайта очень важно убедиться, что он правильно работает в разных браузерах. Один из способов сделать это — загрузить разные браузеры и получить доступ к веб-сайту через них.

    Но что, если у вас нет определенного устройства, на котором работает только определенный браузер? Неэффективно просто покупать каждое отдельное устройство только для того, чтобы обеспечить бесперебойную работу.

    Самый простой способ — сменить пользовательский агент. Это позволит вам увидеть, работает ли ваш сайт во всех распространенных браузерах. Точно так же для вашего веб-сайта может потребоваться обратная совместимость. В этом случае вы можете изменить строку пользовательского агента на Internet Explorer 8 вместо того, чтобы устанавливать копию браузера вручную.

    Обход ограничений браузера 

    Хотя это происходит не так часто, как раньше, некоторые веб-сайты и веб-страницы можно просматривать только в определенных браузерах. Например, вы, должно быть, видели сообщения, в которых говорится, что конкретная веб-страница может быть правильно просмотрена только в том случае, если она открыта в определенном браузере.

    Вместо смены браузера вы можете воспользоваться переключением агента пользователя.

    Веб-скрапинг 

    Когда вы собираете в Интернете информацию о ценах конкурентов или любые другие данные, вы должны предпринять некоторые шаги, чтобы гарантировать, что вы не будете заблокированы или заблокированы целевым веб-сайтом. Одной из таких мер является изменение вашего пользовательского агента.

    Каждый веб-сайт идентифицирует браузер и операционную систему запроса через пользовательский агент. Как и в случае с IP-адресами, если веб-сайт получает слишком много запросов от одного и того же пользовательского агента, он, скорее всего, заблокирует вас. Чтобы избежать этого, часто меняйте строку пользовательского агента во время просмотра веб-страниц, а не просто придерживайтесь ее. Разработчики иногда добавляют поддельные пользовательские агенты в заголовок HTTP, чтобы избежать блокировки.

    Вы можете либо использовать переключатель пользовательских агентов, либо составить список пользовательских агентов вручную.

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

    Как изменить строку пользовательского агента?

    Вы можете изменить пользовательский агент, чтобы изменить идентификацию браузера. Веб-сервер увидит запрос, как если бы он исходил из браузера, отличного от того, который вы на самом деле используете. Вы можете сделать это, если сайт несовместим с вашим браузером или вы просто хотите просмотреть информацию в Интернете.

    Процесс смены пользовательских агентов отличается для каждого браузера. В этом руководстве мы обсудим этот метод для Chrome.

    Изменить идентификацию браузера в Chrome

    Пользовательский агент браузера находится в Инструменте разработчика. Нажмите кнопку меню и перейдите в «Дополнительные инструменты». Здесь вы увидите «Инструменты разработчика». Более простой способ открыть это — одновременно нажать Shift+Ctrl+I на клавиатуре.

    На вкладке Консоль нажмите кнопку меню. Затем выберите «Условия сети». Если вы не видите консоль, нажмите кнопку меню в углу панели. Он будет рядом с кнопкой «х». Нажмите эту кнопку и выберите «Показать консоль».

    На вкладке «Условия сети» вы увидите параметр «Агент пользователя». По умолчанию установлен флажок «Выбирать автоматически». Снимите этот флажок и выберите пользовательский агент из существующего списка.

    Кроме того, вы можете установить собственный пользовательский агент. Имейте в виду, что этот параметр будет применяться только до тех пор, пока открыта панель инструментов разработчика. Кроме того, это относится только к той вкладке, которую вы используете в данный момент.

    Основная причина изменения пользовательских агентов — гарантировать, что веб-сайт не заблокирует ваш запрос. Но почему веб-сайты даже блокируют запросы пользователей? В основном это делается для защиты их информации и предотвращения перегрузки сервера.

    Как веб-сайты блокируют запросы?

    Как бизнес, вы можете захотеть парсить веб-сайты для различных целей, чтобы собирать важные данные, которые помогут вам принимать обоснованные решения. Один из них — ценовой скрапинг.

    Например, если вы планируете открыть свой бизнес, вам необходимо будет разработать ценовую стратегию. Что может быть лучше, чем проверка цен, по которым ваши конкуренты продают свою продукцию? Но практически невозможно вручную проверить цену каждого продукта, который продает каждый из ваших конкурентов. Вместо этого вы можете использовать инструмент очистки цен, чтобы найти эту информацию вместе с другими данными, такими как описания продуктов и атрибуты продуктов.

    Инструменты парсинга отправляют много запросов за короткий промежуток времени, что может привести к перегрузке сайта. Это может вызвать медленную загрузку или привести к сбою сайтов. Кроме того, злоумышленники могут попытаться очистить сайты по неэтичным причинам или преднамеренно нанести вред сайтам. Чтобы предотвратить перегрузку своих сайтов и защитить их от злоумышленников, многие веб-сайты имеют механизмы защиты от парсинга.

    Вот несколько популярных способов, которыми веб-сайты блокируют сбор данных компаниями:

    Ограничения скорости для IP-адресов

    Отправка нескольких запросов с одного IP-адреса может показаться подозрительной. Порог для каждого сайта отличается. Например, один веб-сайт может считать 20 запросов с одного IP-адреса слишком большим, а другой может считать 200 запросов максимальным.

    Обнаружение геолокации IP 

    Некоторые веб-сайты блокируют доступ на основе географического местоположения, откуда поступает запрос. Например, веб-сайты в определенной стране могут принимать запросы только из этой страны.

    Это может быть связано с правительственными ограничениями. Некоторые веб-сайты также ограничивают доступ из-за лицензионных ограничений, основанных на сделках с телевидением и другими СМИ.

    Но это можно обойти. Вы можете сделать так, чтобы на сайте отображалось, что вы отправляете запрос из его страны. Например, Rayobyte предоставляет прокси-серверы для центров обработки данных для 27 стран, и число их постоянно увеличивается.

    Вы можете получить доступ к веб-сайтам в этих странах, используя соответствующие прокси.

    Обнаружение пользовательского агента

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

    Как избежать бана при парсинге веб-страниц?

    При очистке веб-страниц вы должны быть полностью ответственными и осторожными. Многие владельцы веб-сайтов не верят в открытый доступ к данным. Точно так же, если вы просматриваете веб-сайты своих конкурентов для сравнения цен, вас могут заблокировать, если вы отправите слишком много запросов, поскольку это может замедлить работу веб-сайтов.

    Вот несколько советов, как избежать банов во время парсинга веб-страниц: 

    Обход механизмов защиты от парсинга, но будьте этичны

    Вы, конечно, хотите быть этичными и уважительными при сборе данных.

    Во-первых, вам нужно знать, что содержит файл robots.txt и как он работает. Файл сообщает сканерам, какие страницы они могут или не могут запрашивать с веб-сайта. Тем самым они избегают перегрузки веб-сайта и замедления его запросов. В файле также есть правила парсинга. Например, большинство веб-сайтов позволяют ботам поисковых систем очищать их, поскольку они хотят занять высокие позиции в результатах поиска. Между тем, на некоторых веб-сайтах есть Disallow:/ в файле robots.txt. Это означает, что они не хотят, чтобы определенные данные с их веб-сайта были удалены.

    Веб-сайты с механизмом защиты от парсинга обеспечивают эффективность процесса, проверяя, исходит ли запрос от бота или от человека. Они делают это, отслеживая следующие точки:

    • Скорость: Люди могут отправлять запросы на веб-сайты с определенной скоростью. При этом бот может отправлять запрос каждую минуту или даже несколько раз в минуту. Если вы отправите много запросов, превышающих возможности человека, механизм защиты от парсинга пометит вас как бота.
    • Шаблон:  Механизм защиты от парсинга также проверяет шаблон запросов. Вы ориентируетесь только на ссылки или описания продуктов на каждой странице веб-сайта? Если механизм обнаружит закономерность, он может классифицировать вас как бота.
    • IP-адрес:  Если вы используете один и тот же IP-адрес для отправки чрезмерного количества запросов, вы, скорее всего, будете заблокированы.
    Использовать случайные интервалы для размещения запросов

    Если вы отправляете запросы на веб-сайт в необычно определенное время, его механизм защиты от ботов легко обнаружит, что запрос исходит не от человека. Реальные люди не настолько специфичны или предсказуемы.

    Человек не будет отправлять запрос на сайт каждые 10 минут в середине дня. Если вы хотите избежать блокировки, лучше всего использовать рандомизированные задержки. Таким образом, вы также сможете соблюдать правила сайта и не перегружать сервер. Лучший способ найти правильное время задержки — проверить файл robots.txt. У него будет предел сканирования веб-сайта, который представляет собой количество запросов, которые веб-сайт принимает за определенный период времени. Соблюдайте лимит обхода и подождите нужное количество времени, прежде чем отправлять следующий запрос.

    Кроме того, соскребайте в непиковые часы, которые часто приходятся на ночь. Это гарантирует, что вы не перегружаете сайт, когда люди пытаются делать покупки или просматривать страницы сайта.

    Используйте правильный прокси

    В соответствии с пунктом, рассмотренным выше, ротация IP может предотвратить бан. Но тип используемого вами IP-адреса также определяет вероятность того, что вас забанят или заблокируют.

    Например, если вы используете домашний IP-адрес, у вас меньше шансов быть заблокированным, поскольку домашние IP-адреса связаны с посетителями-людьми. Между тем, прокси-серверы центров обработки данных имеют сравнительно более высокие шансы быть заблокированными, поскольку они не связаны с посетителями-людьми.

    Использование подходящего прокси-сервера поможет: 

    • Уменьшить вероятность блокировки IP-адресов.
    • Повысьте свою анонимность.
    • Обход блокировки геотаргетинга.
    • Повышение безопасности во время парсинга веб-страниц.

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

    Rayobyte этично получает эти IP-адреса от реальных домашних пользователей, которые согласились предоставить свои IP-адреса сети за достаточную компенсацию. Поэтому у этих IP самый низкий риск банов.

    Что еще более важно, это вращающиеся прокси, что означает, что они постоянно меняются. Если вы хотите добиться более высоких показателей успешного веб-скрейпинга, не беспокоясь о количестве запросов, которые вы можете отправлять в минуту, резидентные прокси-серверы Rayobyte — отличный выбор для вас.

    Между тем, прокси-серверы центров обработки данных от Rayobyte одинаково эффективны для парсинга веб-страниц. Rayobyte предоставляет прокси из 27 стран, включая США, Великобританию, Аргентину, Австралию, Бельгию, Бразилию, Канаду, Китай, Колумбию, Францию, Германию, Индию, Индонезию, Италию, Японию, Мексику, Нидерланды, Пакистан, Филиппины, Польшу. , Сингапур, Южная Африка, Южная Корея, Испания, Тайвань, Таиланд и Вьетнам, и с каждым годом их становится все больше.

    Что наиболее важно, Rayobyte имеет девять номеров автономных систем (ASN). Даже если один ASN будет заблокирован веб-сайтом, у вас не будет простоев. Вместо этого вы можете просто направить процесс очистки веб-страниц на один из других ASN.

    Используйте юзер-агент, который выглядит органично 

    Мы уже говорили о веб-серверах, идентифицирующих браузеры и операционные системы через юзер-агент — если сайт получает слишком много запросов с одним и тем же юзер-агентом, он может вас заблокировать.

    Однако, если вы меняете идентификатор браузера для каждого запроса, у вас снижается риск блокировки. Но пока вы управляете всеми другими операциями компании, у вас может не быть времени или опыта для периодического переключения пользовательских агентов. Вот тут и приходит на помощь Scraping Robot. Талантливая команда Scraping Robot может создавать индивидуальные решения для парсинга, точно соответствующие вашим потребностям, независимо от вашего бюджета. Вы можете оставить свой пользовательский агент чередовать заботы с Scraping Robot и сосредоточиться на других бизнес-задачах.

    В Scraping Robot постоянно добавляются новые модули, так что вы обязательно найдете именно то, что вам нужно для ваших задач по парсингу. Но если у вас есть особые требования, вы можете воспользоваться индивидуальными решениями провайдера.

    Используйте решения для решения CAPTCHA 

    Многие веб-сайты используют полностью автоматизированный общедоступный тест Тьюринга, чтобы определить компьютеры и людей отдельно (CAPTCHA), чтобы определить, исходит ли запрос от бота или пользователя-человека. Это часто делается, потому что веб-сайты не хотят, чтобы вы крали их информацию. В CAPTCHA вы должны нажимать на определенные изображения в соответствии с инструкциями.

    К сожалению, компьютеры не могут прочитать эти изображения. Поэтому при веб-скрапинге вам, возможно, придется прибегнуть к услугам, которые автоматически разрешают CAPTCHA. Эти инструменты готовы к использованию и позволяют обойти эти ограничения.

    Попробуйте автономный браузер 

    Автономные браузеры — это веб-браузеры, не имеющие пользовательского интерфейса. Проще говоря, это означает, что они такие же, как браузер, который вы регулярно используете, но у них нет адресных строк, закладок и панелей вкладок.

    Вместо URL эти браузеры требуют, чтобы вы управляли ими программно. По сути, вы пишете сценарий, чтобы рассказать им, как они должны действовать. Хотя у них нет функций визуального взаимодействия, эти браузеры позволяют вам эмулировать загрузку, прокрутку и нажатие, как это делает обычный браузер. Эта функция делает их идеальными для повторяющихся задач, таких как очистка и веб-сканирование. Кроме того, поскольку визуальные функции браузера не нужно загружать, время, необходимое для выполнения задания, меньше. Вы также экономите ресурсы, используя безголовые браузеры.

    Имейте в виду, что эти браузеры интенсивно используют память и ЦП. Таким образом, они могут вызвать сбои. Когда вы используете обычный инструмент извлечения HTML для очистки веб-страниц, сайты могут обнаруживать такие признаки, как выполнение JavaScript и расширения. Затем они могут заблокировать вас, если узнают, что вы не настоящий пользователь.

    Безголовый браузер позволяет эмулировать взаимодействие с платформой через пользователей, которые полагаются на элементы JavaScript. Таким образом, вы можете использовать эти браузеры для получения информации с веб-сайтов с самыми строгими правилами.

    Собирайте с умом и с соблюдением этических норм

    Помните об этих указателях при очистке веб-страниц. Не отправляйте слишком много запросов в определенный промежуток времени, используйте разные IP-адреса и сделайте своего робота максимально органичным.

    Если вам нужен доступ к нескольким IP-адресам, когда у вас есть только один браузер или устройство, Rayobyte сделает эту работу за вас. Прокси-серверы провайдера для жилых помещений и центров обработки данных предназначены для больших и малых компаний, максимально эффективно удовлетворяя их потребности в веб-скрапинге.

    Как прокси-серверы помогают предприятиям собирать данные?

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

    Конкурентный анализ 

    Прошли те времена, когда одно предприятие имело монополию на рынке, потому что оно было единственным, кто производил определенный продукт или предлагал определенную услугу. На сегодняшний день существует множество возможностей для клиентов.

    Поэтому очень важно знать, чем занимаются ваши конкуренты и как вы можете опережать их. Веб-скрапинг с использованием прокси-серверов может помочь вам получить преимущество над конкурентами.

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

    Например, вы можете проверить стратегии ценообразования, которые используют ваши конкуренты. К какому ценовому диапазону относятся товары? До чего падают цены во время распродаж? Кроме того, вы можете проверить другие вещи, такие как описания продуктов и визуальные эффекты. Ваши конкуренты также показывают видео о продуктах вместе с фотографиями? Какие атрибуты они упоминают в описании продукта?

    Эти вещи могут помочь вам привлечь клиентов — если конкретная тенденция работает для большинства ваших конкурентов, она, скорее всего, будет работать и для вас.

    Оптимизация продукта

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

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

    Если в большинстве обзоров клиенты упоминают, что они предпочли бы, чтобы ваш продукт был доступен в разных цветах, вы можете сосредоточиться на представлении этого и удовлетворении их желаний и потребностей. Таким образом, вам не нужно идти путем проб и ошибок, потому что кто-то уже сделал это за вас. Вы можете просто использовать эту доступную информацию, чтобы сделать свои предложения лучше, чем у конкурентов.

    Final Words

    Короче говоря, наиболее распространенные пользовательские агенты действуют как посредники между Интернетом и пользователем. Они предоставляют веб-серверу необходимую информацию об устройстве, браузере, программном обеспечении и операционной системе, которые вы используете для отправки запроса на веб-сайт. Затем веб-серверы могут использовать эту информацию для отображения соответствующих веб-страниц.

    Как бизнес, вам придется менять и ротировать свои пользовательские агенты, если вы собираетесь очищать Интернет для анализа конкурентов и сбора данных. Если вы не хотите сталкиваться с хлопотами ручной очистки или блокировки веб-сайтами, попробуйте прокси-серверы Rayobyte для жилых помещений и центров обработки данных. Прокси-серверы Rayobyte удовлетворяют потребности в парсинге компаний и организаций, таких как малые предприятия, государственные учреждения и компании из списка Fortune 500.

    Информация, содержащаяся в этой статье, включая информацию, размещенную официальными сотрудниками, материалы, отправленные гостями, сообщения на досках объявлений или другие третьи -партийный материал представлен исключительно в целях образования и расширения знаний читателя. Все товарные знаки, использованные в данной публикации, настоящим признаются собственностью их соответствующих владельцев.

    Подмена пользовательского агента: что это такое и почему это важно?

    Существует ряд методов, используемых для сокрытия мошеннических действий в Интернете, и одним из них является спуфинг агента пользователя. Также называется спуфингом UA или спуфингом браузера.

    Хотя спуфинг пользовательского агента имеет некоторые законные применения, особенно для разработчиков программного обеспечения, он часто используется для мошенничества с рекламой и других форм онлайн-мошенничества.

    Пока что технические вопросы… Почему вам следует беспокоиться о спуфинге пользовательского агента и какое влияние он оказывает на среднего владельца бизнеса или цифрового маркетолога?

    Чтобы ответить на вопрос «что такое спуфинг UA?», нам нужно сначала рассмотреть основы.

    Что такое строка пользовательского агента?

    Строка пользовательского агента, также называемая UA или UAS, представляет собой фрагмент кода, предоставляемый веб-браузером, таким как Chrome или Firefox, серверу веб-сайта.

    В строке UA содержится информация о веб-браузере, версии программного обеспечения и операционной системе устройства, среди прочего.

    Причина представления строки пользовательского агента заключается в том, что сайт знает, как представить информацию (это мобильный сайт? это старая версия определенного браузера?). Таким образом, веб-сайт получает информацию из строки пользовательского агента, и, вуаля, вот ваш веб-сайт, сэр, наслаждайтесь просмотром.

    Чем полезна подмена пользовательского агента?

    Для веб-разработчиков настройка строки UA может помочь проверить совместимость веб-сайтов на разных устройствах и в разных браузерах. На самом деле, многие будут использовать пользовательский агент, подделывающий расширение или плагин Chrome, чтобы помочь им настроить свой UAS на лету — популярный метод тестирования веб-сайтов или совместимости браузера.

    Некоторые маркетологи могут также использовать подмену агента пользователя, чтобы увидеть, как их реклама, например медийные кампании, отображается в разных браузерах. Это может помочь им решить проблемы с отображением или просто посмотреть, как изображения выглядят в браузере, к которому у них не было бы доступа в противном случае.

    Таким образом, подмена пользовательского агента не всегда является злонамеренной практикой.

    Но, как вы, возможно, уже заметили, его могут легко использовать мошенники. На самом деле, теоретически поддельную строку UA не нужно использовать в дебрях Интернета.

    Как можно использовать строку UA для мошенничества?

    Наиболее очевидный способ использования поддельной строки пользовательского агента для мошенничества с рекламой — представить скрытый или настраиваемый браузер как подлинного пользователя.

    Но хитрость заключается в том, что браузер отправляет другую пользовательскую строку агента пользователя каждый раз, когда посещает веб-сайт, тем самым представляя себя уникальным посетителем.

    Короче говоря, вы можете щелкнуть несколько раз из одного браузера или устройства, но создать впечатление, что это несколько уникальных посетителей. Вам просто нужно менять строку пользовательского агента каждый раз, когда вы нажимаете на ссылку, что делается автоматически, если вы используете расширение в Mozilla, Chrome или любом пользовательском браузере.

    Эта форма запутывания устройства позволяет злоумышленнику нажимать на платные результаты поиска или размещать медийную рекламу, не будучи обнаруженным рекламными платформами.

    Обфускация устройства

    Фермы ботов и клик-фермы, как правило, работают либо с серверных центров, либо с подключенных смартфонов. И они часто находятся в таких местах, на которые не нацелены цифровые маркетологи, например, в Центральной Азии, Китае или на Филиппинах. Изменив пользовательский агент, оператор фермы ботов может сделать свою сеть устаревших Android-смартфонов похожей на клики с Mac в Калифорнии.

    Поддельные показы

    Метод блокировки недействительного трафика, используемый Google и Facebook, можно обмануть, вставив пользовательскую строку агента пользователя. Таким образом, ферма кликов или другой источник фальшивого трафика может изменить строки пользовательского агента, чтобы создать впечатление, что они доставляют подлинный трафик.

    Клики вне географического положения

    Спуфинг браузера с использованием спуфинга UA также позволяет мошенникам изменять географические настройки, такие как язык устройства, часовой пояс или другие данные о местоположении. Опять же, это позволяет фермам кликов или фермам ботов предлагать «настоящий» трафик из определенного региона или страны. Если вы когда-нибудь задавались вопросом, как купить «настоящие органические клики из США», то это ответ. И нет, они не настоящие и не органические.

    Блокировка поддельного трафика

    Обнаружение и блокировка ботов стало чем-то вроде вызывает celebre , отчасти благодаря комментариям некоего Илона Маска по этому поводу.

    На самом деле дебаты о ботах в Твиттере высветили то, что уже известно многим знающим маркетологам: существует множество ботов, и никто точно не знает, сколько их.

    Рекламные платформы, включая Google и Facebook, очевидно, знают о проблеме. И да, у них есть меры для блокировки поддельного трафика, включая ботов и фермы кликов.

    Facebook регулярно проводит аудит пользователей и удаляет подозрительные учетные записи ботов. Google использует ряд методов для блокировки поддельного трафика и возмещения средств рекламодателям, чьи объявления были нажаты ботами или веб-скребками.

    Но…

    Достаточно ли этого?

    Большинство маркетологов считают, что это не так. Поскольку Google оценивает уровень недействительного трафика (IVT) в пределах 1-8%, что является средним показателем в Google Analytics для многих маркетологов PPC, истинная цифра оказалась намного выше.

    Здесь, в ClickCease, мы видим, что в среднем 14% кликов в PPC-кампаниях не являются подлинными. В некоторых конкурентных отраслях этот показатель достигает 60% и более.

    Почему такая большая разница между нами и Google или Facebook?

    Все дело в дактилоскопии устройства.

    ClickCease — это служба, предназначенная для мониторинга и блокировки мошеннических кликов. Да, ClickCease обнаружит несоответствующие устройства, поддельные браузеры или другие данные, не соответствующие их устройству.

    Если вы размещаете платную рекламу в Google, Bing или Facebook, вы можете запустить БЕСПЛАТНУЮ проверку трафика , чтобы узнать, сколько средств было собрано в качестве IVT.

    пользовательских агентов · PyPI

    user_agents — это библиотека Python, которая предоставляет простой способ идентификации/обнаружения таких устройств, как мобильные телефоны, планшеты и их возможности, путем анализа (браузера/HTTP) строк пользовательского агента. Цель состоит в том, чтобы надежно определить:

    • Пользовательский агент — мобильное устройство, планшет или ПК
    • Пользовательский агент имеет сенсорные возможности (имеет сенсорный экран)

    user_agents полагается на отличный ua-parser для фактического анализа необработанной строки пользовательского агента.

    Установка

    user-agents размещен на PyPI и может быть установлен как таковой:

     pip install pyyaml ​​ua-parser user-agents
     

    Кроме того, вы также можете получить последний исходный код с Github и установить его вручную.

    Использование

    Различная базовая информация, которая может помочь вам идентифицировать посетителей, может быть доступна браузер , устройство и ОС атрибуты. Например:

     из разбора импорта user_agents
    # строка пользовательского агента iPhone
    ua_string = 'Mozilla/5.0 (iPhone; процессор iPhone OS 5_1, например Mac OS X) AppleWebKit/534.46 (KHTML, например Gecko) Version/5.1 Mobile/9B179 Safari/7534.48.3'
    user_agent = синтаксический анализ (ua_string)
    # Доступ к атрибутам браузера пользовательского агента
    user_agent.browser # возвращает Browser(family=u'Mobile Safari', version=(5, 1), version_string='5.1')
    user_agent.browser.family # возвращает «Мобильное Safari»
    user_agent. browser.version # возвращает (5, 1)
    user_agent.browser.version_string # возвращает '5.1'
    # Доступ к свойствам операционной системы пользовательского агента
    user_agent.os # возвращает операционную систему (family=u'iOS', version=(5, 1), version_string='5.1')
    user_agent.os.family # возвращает «iOS»
    user_agent.os.version # возвращает (5, 1)
    user_agent.os.version_string # возвращает '5.1'
    # Доступ к свойствам устройства агента пользователя
    user_agent.device # возвращает Device(family=u'iPhone', brand=u'Apple', model=u'iPhone')
    user_agent.device.family # возвращает «iPhone»
    user_agent.device.brand # возвращает «Apple»
    user_agent.device.model # возвращает «iPhone»
    # Просмотр красивой строковой версии
    str(user_agent) # возвращает "iPhone / iOS 5.1 / Mobile Safari 5.1"
     

    user_agents также предоставляет несколько других более «сложных» атрибутов, которые являются производными от одного или нескольких основных атрибутов, определенных выше. На данный момент эти атрибуты должны правильно идентифицировать популярные платформы/устройства, всегда приветствуются пул-реквесты для поддержки более мелких.

    В настоящее время поддерживаются следующие атрибуты:

    • is_mobile : идентифицируется ли пользовательский агент как мобильный телефон (iPhone, телефоны Android, Blackberry, устройства Windows Phone и т. д.)
    • is_tablet : идентифицируется ли пользовательский агент как планшетное устройство (iPad, Kindle Fire, Nexus 7 и т. д.)
    • is_pc : определено, что пользовательский агент работает под управлением традиционной «настольной» ОС (Windows, OS X, Linux)
    • is_touch_capable : имеет ли пользовательский агент сенсорные возможности
    • is_bot : является ли пользовательский агент поисковым роботом/пауком

    Например:

     из разбора импорта user_agents
    # Начнем со старого устройства Blackberry без сенсорного экрана.
    ua_string = 'BlackBerry9700/5.0.0.862 Профиль/MIDP-2.1 Конфигурация/CLDC-1.1 VendorID/331 UNTRUSTED/1.0 3gpp-gba'
    user_agent = синтаксический анализ (ua_string)
    user_agent. is_mobile # возвращает True
    user_agent.is_tablet # возвращает False
    user_agent.is_touch_capable # возвращает False
    user_agent.is_pc # возвращает False
    user_agent.is_bot # возвращает False
    str(user_agent) # возвращает "BlackBerry 9700 / BlackBerry OS 5 / BlackBerry 9700"
    # Теперь Samsung Galaxy S3
    ua_string = 'Mozilla/5.0 (Linux; U; Android 4.0.4; en-gb; GT-I9300 Build/IMM76D) AppleWebKit/534.30 (KHTML, как Gecko) Version/4.0 Mobile Safari/534.30'
    user_agent = синтаксический анализ (ua_string)
    user_agent.is_mobile # возвращает True
    user_agent.is_tablet # возвращает False
    user_agent.is_touch_capable # возвращает True
    user_agent.is_pc # возвращает False
    user_agent.is_bot # возвращает False
    str(user_agent) # возвращает "Samsung GT-I9300/Андроид 4.0.4/Андроид 4.0.4"
    # строка пользовательского агента iPad
    ua_string = 'Mozilla/5.0(iPad; U; CPU iPhone OS 3_2, как Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, как Gecko) Version/4.0.4 Mobile/7B314 Safari/531.21.10'
    user_agent = синтаксический анализ (ua_string)
    user_agent. is_mobile # возвращает False
    user_agent.is_tablet # возвращает True
    user_agent.is_touch_capable # возвращает True
    user_agent.is_pc # возвращает False
    user_agent.is_bot # возвращает False
    str(user_agent) # возвращает "iPad/iOS 3.2/Mobile Safari 4.0.4"
    # Строка пользовательского агента Kindle Fire
    ua_string = 'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_3; en-us; Silk/1.1.0-80) AppleWebKit/533.16 (KHTML, например, Gecko) Version/5.0 Safari/533.16 Silk-Accelerated=true'
    user_agent = синтаксический анализ (ua_string)
    user_agent.is_mobile # возвращает False
    user_agent.is_tablet # возвращает True
    user_agent.is_touch_capable # возвращает True
    user_agent.is_pc # возвращает False
    user_agent.is_bot # возвращает False
    str(user_agent) # возвращает "Kindle/Android/Amazon Silk 1.1.0-80"
    # Сенсорное устройство с Windows 8
    ua_string = 'Mozilla/5.0 (совместимый; MSIE 10.0; Windows NT 6.2; Trident/6.0; Touch)'
    user_agent = синтаксический анализ (ua_string)
    user_agent.is_mobile # возвращает False
    user_agent. is_tablet # возвращает False
    user_agent.is_touch_capable # возвращает True
    user_agent.is_pc # возвращает True
    user_agent.is_bot # возвращает False
    str(user_agent) # возвращает "ПК/Windows 8/IE 10"
     

    Запуск тестов

     python -m unittest обнаружить
     

    Список изменений

    Версия 2.2.0 (23 августа 2020 г.)

    • Требуется ua-parser >= 0.10.0. Спасибо @jnozsc!
    • Добавлены методы экземпляра get_device() , get_os() и get_browser() до UserAgent . Спасибо @rodrigondec!

    Версия 2.1 (08.02.2020)

    • python-user-agents теперь требуется ua-parser>=0.9.0 . Спасибо @jnozsc!
    • Правильно определять семейства браузеров Chrome Mobile. Спасибо @jnozsc!

    Версия 2.0 (07.04.2019)

    • python-user-agents теперь требуется ua-parser>=0.8.0 . Спасибо @IMDagger!

    Версия 1.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *