Бенчмарк стелс-браузеров: Patchright, nodriver, Camoufox (2026)

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

Stealth Browser Benchmark: Patchright, nodriver, Camoufox (2026)
В этой статье

3 октября 2026 года мы провели небольшой бенчмарк стелс-браузеров: обычный Playwright в качестве контрольного, затем Patchright, nodriver, Camoufox и Zendriver — все против публичных тестовых страниц для обнаружения ботов, один раз с датацентрового IP Hetzner и один раз через американский резидентный прокси. Каждый вердикт об автоматизации определял браузер. Обычный Playwright помечали deviceandbrowserinfo, BrowserScan, playground от Fingerprint и Pixelscan во всех прогонах с обоих IP. В headful-режиме четыре стелс-инструмента прошли первые три страницы во всех прогонах, где был получен вердикт, а Pixelscan пометил 2 из их 39 headful-прогонов (ещё 2 — n/a). Резидентный IP влиял только на проверки, смотрящие на сеть, и не всегда в лучшую сторону.

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

Бенчмарк стелс-браузеров: короткий ответ

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

  • Вердикты об автоматизации от IP не менялись. Playwright получил isBot: true на deviceandbrowserinfo, «WebDriver: Robot» на BrowserScan и «bad bot (type: webdriver)» на playground от Fingerprint во всех 10 своих headful-прогонах, из обеих сетей. Patchright, nodriver, Zendriver и Camoufox ни одной из этих пометок ни в одном headful-прогоне не получили.
  • Pixelscan реагировал на датацентровый IP. Он выводил «Proxy detected» в 20 из 20 прогонов с IP Hetzner, хотя никакого прокси в этих прогонах не было. Через резидентный прокси — в 3 из 34 прогонов.
  • Playground от Fingerprint реагировал на резидентный IP. Его сигнал прокси сработал в 33 из 34 резидентных прогонов, причём часто с названием прокси-сети («residential proxy from SOAX», «from INFATICA» и т. д.). IP Hetzner для инструментов на базе Chrome он не помечал. У трёх стелс-инструментов на Chrome suspect score составлял 0–6 из датацентра и 8–24 через sticky-резидентный прокси.
  • Три инструмента из пяти раскрывали через WebRTC реальный IP сервера за прокси. Playwright, Patchright и nodriver — в каждом прогоне через прокси. Zendriver по умолчанию блокирует WebRTC, а Camoufox его подменяет.
  • Headless-режим значил больше, чем IP. В headless Patchright и nodriver получали пометки на тех же страницах, которые в headful проходили.

Что запускали: версии, сетевые условия, цели

Всё работало в одном контейнере Debian 12 с Xvfb, по одному браузеру за раз, на 4-ядерном Linux-хосте. Каждый инструмент запускался с конфигурацией, которую рекомендует его собственная документация, и не более: без кастомного user agent, без инъекции отпечатков, без движений мыши, без блокировки ресурсов. Для Patchright это конфигурация «Best Practice» из README: persistent context, настоящий Chrome, headful, no_viewport=True.

ИнструментПакетБраузерЗапуск
Playwright (контроль)playwright 1.62.0Playwright Chromium 151.0.7922.34chromium.launch(headless=False), по умолчанию
Patchrightpatchright 1.63.0Google Chrome 154.0.8037.97launch_persistent_context(channel="chrome", headless=False, no_viewport=True)
nodrivernodriver 0.50.3Google Chrome 154.0.8037.97start(headless=False, sandbox=False)
Zendriverzendriver 0.17.1Google Chrome 154.0.8037.97start(headless=False, sandbox=False)
Camoufoxcamoufox 0.5.6Camoufox 152.0.4-beta.31AsyncCamoufox(headless=False, os="linux", geoip=True)

Два компромисса, о которых говорим сразу. Контрольный Playwright — версии 1.62.0, а не актуальной 1.63.0, потому что camoufox 0.5.6 требует playwright<1.63, а все инструменты жили в одном окружении. И Camoufox работал с os="linux" и только с Linux-шрифтами: диск хоста был почти заполнен, и мы не стали распаковывать наборы шрифтов для macOS и Windows. По умолчанию Camoufox выбрал бы случайную ОС.

Сетевые условия:

  • Датацентр: собственный IP хоста, AS24940 Hetzner Online GmbH, Хельсинки (по данным ipinfo.io).
  • Резидентный, sticky: американский резидентный выход с новой sticky-сессией на каждый прогон. Во всех прогонах через прокси инструменты подключались через один и тот же небольшой локальный релей. Он добавляет аутентификацию прокси и считает байты, потому что nodriver и Zendriver не умеют передавать учётные данные прокси во флаге Chrome.
  • Три побочных условия: проход через ротируемый резидентный прокси с новым выходным IP на каждое соединение, проход с прогревом (объяснён ниже) и по одному headless-прогону на инструмент с датацентрового IP.

Цели в порядке посещения — в свежем браузере на каждый прогон, каждая в новой вкладке: bot.sannysoft.com, обнаружение ботов BrowserScan, deviceandbrowserinfo «Are you a bot?», CreepJS, playground от Fingerprint, nowsecure.nl (за Cloudflare; обычный curl получает 403 с cf-mitigated: challenge), а также bot check и fingerprint check от Pixelscan. Страницу продукта Fingerprint для обнаружения ботов мы исключили: она показывает только статичный пример JSON, а не живой вердикт.

Что измеряли: загрузилась ли страница, вердикт ровно в том виде, в каком его вывела страница, и время до появления вердикта (опрос каждые 0,5 с, таймаут 45 с). Для каждого визита сохраняли текст страницы и полностраничный скриншот. Вердикт, который не удалось распарсить, записывался как «unparsed» и никогда не угадывался. Так закончились четыре headful-визита: три таймаута страницы и один снимок посреди обновления. В таблицах они учтены как n/a.

Прогоны: по 3 на инструмент для каждого условия — датацентр, ротируемый и sticky-резидентный; по 1 на инструмент для headless и прогрева. Всего 54 прогона, с 06:50 до 08:02 UTC.

Результаты: проверки автоматизации на уровне браузера

Таблица считает прогоны: «3/3» означает, что страница пометила браузер во всех трёх. Каждая ячейка взята из распарсенного файла результатов.

ИнструментСетьПроваленные строки sannysoftПометка BrowserScanisBot на deviceandbrowserinfoHeadless по CreepJS«Bot» по FingerprintБаннер бота Pixelscan
Playwright (контроль)Датацентр (Hetzner)WebDriver3/33/333%3/3: You are a bad bot (type: webdriver)3/3
Playwright (контроль)Резидентный US, stickyWebDriver3/33/333%3/3: You are a bad bot (type: webdriver)3/3
PatchrightДатацентр (Hetzner)нет0/30/30%Not detected (3/3)0/3
PatchrightРезидентный US, stickyнет0/30/30%Not detected (3/3)0/3
nodriverДатацентр (Hetzner)нет0/30/30%Not detected (3/3)0/3
nodriverРезидентный US, stickyнет0/30/30%Not detected (3/3)0/2 (+1 n/a)
ZendriverДатацентр (Hetzner)нет0/30/30%Not detected (3/3)0/3
ZendriverРезидентный US, stickyнет0/30/30%Not detected (3/3)0/3
CamoufoxДатацентр (Hetzner)Chrome0/30/30%Not detected (3/3)0/3
CamoufoxРезидентный US, stickyChrome0/30/30%Not detected (3/3)0/3

Несколько деталей, которые таблица скрывает:

  • Единственная проваленная строка sannysoft у Camoufox — «Chrome (New): missing». Для браузера на базе Firefox это ожидаемо и утечкой автоматизации не является.
  • CreepJS выводит ещё и оценку «% like headless». Во всех headful-прогонах она составляла 50% у Playwright, 44% у трёх стелс-инструментов на Chrome и 6% у Camoufox. Оценка «% stealth» была 0% у всех. CreepJS не маркирует ни одно из этих чисел как «пройдено» или «провалено».
  • Bot check от Pixelscan дважды переключился. Patchright получил «Bot Behavior Detected» (плитка CDP) в единственном прогоне с прогревом, а Zendriver — один раз в ротируемом проходе. Оба случая видны на скриншотах. Ещё два визита на Pixelscan — n/a. Один завершился по таймауту. В другом наш захват текста поймал страницу посреди обновления, а скриншот, сделанный мгновением позже, показывает «You're Definitely a Human».
  • nowsecure.nl показал содержимое страницы во всех headful-прогонах, без оставшегося на экране челленджа, включая обычный Playwright с датацентрового IP. В headful-режиме он вообще не различал инструменты.

Почему именно эти проверки ловят стоковый Playwright (флаг navigator.webdriver, побочные эффекты CDP Runtime.enable, флаги запуска), читайте в нашем подробном разборе Patchright и статье о браузерном фингерпринтинге.

Результаты: сигналы, учитывающие IP, — датацентр против резидентного

Сеть оценивают только две страницы. Playground от Fingerprint показывает VPN, прокси, IP-блоклист и suspect score. Fingerprint check от Pixelscan показывает прокси и согласованность местоположения. deviceandbrowserinfo прямо пишет, что его тест «не использует репутацию IP или поведение пользователя». То, что его вердикты не менялись вместе с IP, с этим согласуется.

ИнструментСетьФлаг прокси FingerprintФлаг VPN FingerprintSuspect score Fingerprint«Proxy detected» PixelscanПроверка местоположения PixelscanWebRTC раскрывает IP сервера за прокси
Playwright (контроль)Датацентр (Hetzner)0/30/3193/3Timezone spoofedn/a (без прокси реальный IP ожидаем)
Playwright (контроль)Резидентный US, sticky2/30/325–270/3Timezone spoofed3/3
PatchrightДатацентр (Hetzner)0/30/30–63/3Timezone spoofedn/a (без прокси реальный IP ожидаем)
PatchrightРезидентный US, sticky3/30/38–200/3Timezone spoofed3/3
nodriverДатацентр (Hetzner)0/30/30–63/3Timezone spoofedn/a (без прокси реальный IP ожидаем)
nodriverРезидентный US, sticky3/32/310–230/3Timezone spoofed3/3
ZendriverДатацентр (Hetzner)0/30/30–63/3Timezone spoofedзаблокирован (3/3)
ZendriverРезидентный US, sticky3/30/38–240/3Timezone spoofedзаблокирован (3/3)
CamoufoxДатацентр (Hetzner)3/33/3173/3Timezone spoofedn/a (без прокси реальный IP ожидаем)
CamoufoxРезидентный US, sticky3/30/34–141/3совпало (показан город в США)0/3

Где резидентный IP помог

Pixelscan перестал выводить «Proxy detected». Он выводил это во всех датацентровых прогонах, хотя прокси там не было, — похоже, он считает хостинговый ASN признаком прокси. Через резидентный пул — в 1 из 15 sticky-прогонов. Camoufox к тому же получил совпадающее местоположение. Его опция geoip=True выставляет часовой пояс, локаль, геолокацию и IP для WebRTC по выходному IP, поэтому Pixelscan показал город в США вместо «Timezone spoofed».

Где он навредил или ничего не изменил

Сигнал прокси от Fingerprint распознал резидентные выходы как прокси-IP в 33 из 34 прогонов через прокси, во всех трёх режимах, и у многих указал название провайдера. Мы понимаем это так: у Fingerprint есть данные о резидентных пулах. Это не значит, что каждый IP что-то выдал, и ничего не говорит о том, что конкретный сайт сделает с этим сигналом. У стелс-инструментов на Chrome suspect score через прокси вырос, а не снизился. У Playwright — с 19 до 25–27, а единственный прогон с прогревом получил 47.

Отчасти это, скорее всего, наша собственная ошибка. Инструменты на Chrome сохранили часовой пояс контейнера UTC, так что американский IP с часами в UTC на Pixelscan читался как «Timezone spoofed» во всех прогонах через прокси. Camoufox демонстрирует тот же механизм в обратную сторону. С датацентрового IP в Хельсинки его GeoIP-определение поместило выход в Europe/Berlin, а ipinfo показывал Хельсинки. В итоге Fingerprint во всех трёх его датацентровых прогонах пометил VPN («timezone mismatch») и датацентровый прокси с низкой уверенностью, а инструменты на Chrome с того же IP не получили ни того, ни другого. Расхождение IP и часового пояса замечают в любом случае.

WebRTC раскрывал сервер за прокси

И CreepJS, и Pixelscan выводили адрес хоста в Hetzner в качестве WebRTC IP во всех прогонах Playwright, Patchright и nodriver через прокси. HTTP-трафик шёл через резидентный выход, а STUN-запрос по UDP — нет. Zendriver передаёт --webrtc-ip-handling-policy=disable_non_proxied_udp и --force-webrtc-ip-handling-policy по умолчанию, и CreepJS во всех его прогонах сообщал, что WebRTC заблокирован. Camoufox подменял адрес на выход прокси. Заблокированный WebRTC сам по себе сигнал, который некоторые сайты могут учитывать. Штрафуют ли за это какие-то из этих страниц, мы не проверяли; Pixelscan не штрафовал. О других несоответствиях, которые ищут антибот-системы, читайте в статье как антибот-системы обнаруживают прокси.

Headless-режим выдавал сильнее, чем IP

Мы сделали по одному headless-прогону на инструмент с датацентрового IP. Выборка меньше, чем в остальном тесте, но направление очевидно:

Инструмент (headless, датацентровый IP, 1 прогон)Проваленные строки sannysoftisBot на deviceandbrowserinfoHeadless по CreepJS«Bot» по Fingerprintnowsecure.nl
Playwright (контроль)CHR_MEMORY:FAIL, HEADCHR_UA:FAIL, WebDriver1/1100%1/1: You are a bad bot (type: headless_chrome)застрял на «Just a moment...» через 45 с
PatchrightCHR_MEMORY:FAIL, HEADCHR_UA:FAIL1/167%1/1: You are a bad bot (type: headless_chrome)застрял на «Just a moment...» через 45 с
nodriverCHR_MEMORY:FAIL, HEADCHR_UA:FAIL1/167%1/1: You are a bad bot (type: headless_chrome)застрял на «Just a moment...» через 45 с
Zendriverнет1/133%Not detected (1/1)застрял на «Just a moment...» через 45 с
CamoufoxChrome0/10%Not detected (1/1)страница загрузилась

Patchright и nodriver из чистых превратились в помеченных на deviceandbrowserinfo и Fingerprint («bad bot, type: headless_chrome») просто от переключения в headless. На sannysoft провалились строки HEADCHR_UA и CHR_MEMORY. Все инструменты на Chrome, включая Zendriver, застряли на странице Cloudflare «Just a moment...» на nowsecure.nl. В headful-режиме те же инструменты, включая обычный Playwright, проходили сразу. Zendriver избежал пометки бота от Fingerprint, но deviceandbrowserinfo его всё равно пометил. Camoufox на всех этих страницах в headless выглядел так же, как в headful.

Два практических вывода: sticky-сессии и фоновый трафик

Параллельные первые соединения ломали sticky-сессии

При sticky-ID сессии прогоны на Chrome часто показывали на первой странице один IP, а через несколько страниц — другой. Так было в 11 из 12 sticky-прогонов. Camoufox оставался на одном IP в 3 из 3, вероятно потому, что его GeoIP-определение делает один запрос до старта браузера. Мы воспроизвели это через curl: шесть параллельных запросов на совершенно новый ID сессии вернули 3 и 5 разных IP в двух попытках. Последовательные запросы после этого оставались на одном. Один последовательный прогревочный запрос перед запуском браузера решил проблему в 4 из 4 прогонов. В нашем первом проходе через прокси к тому же использовался параметр сессии, который шлюз не распознаёт, поэтому каждое соединение молча получало новый IP. Этот проход выше отражён как ротируемое условие. Урок из обоих случаев: прежде чем доверять «липкости», проверьте её двумя последовательными запросами.

Некоторые конфигурации с настоящим Chrome качают фоновые данные через ваш прокси

На тарифицируемом резидентном трафике Playwright расходовал около 7 МБ за прогон по этим 9 страницам, Patchright — около 8 МБ (12 МБ в одном прогоне), Camoufox — 9–11 МБ. Большинство прогонов nodriver и Zendriver расходовали 40–61 МБ. В прогонах, где мы логировали байты по хостам, основная часть приходилась на optimizationguide-pa.googleapis.com — фоновую загрузку Chrome. Два прогона израсходовали лишь около 9 и 15 МБ, так что это происходит не каждый раз. Patchright тоже запускает настоящий Chrome на свежем профиле, но такого не показал, — значит, всё зависит от того, как инструмент запускает Chrome. Если платите за гигабайт, посчитайте байты по хостам до масштабирования.

Чего этот бенчмарк не показывает

  • Это не тест боевой антибот-защиты. Эти страницы проверяют в основном артефакты на стороне браузера. Коммерческие системы добавляют TLS- и HTTP/2-отпечатки, поведение, историю IP и модели под конкретный сайт. Чистый результат здесь — необходимая планка, но не достаточная. Наше руководство по TLS-фингерпринтингу описывает один из слоёв, которого эти страницы почти не касаются.
  • Выборка маленькая: 3 прогона на ячейку, один день, один датацентровый хост в Финляндии, одна страна прокси. Единичные переключения вроде случаев с Pixelscan невозможно отделить от шума.
  • Взаимодействия не было. Ни кликов, ни прокрутки, ни форм, ни траекторий мыши, так что поведенческое обнаружение не задействовалось.
  • Некоторые проверки хранят историю. Playground от Fingerprint показывает историю по устройству («1 IP, 2 Linked IDs in the past 24 hours»), так что повторные визиты могли повлиять на последующие оценки.
  • Настройки по умолчанию не подстраивались. Инструменты на Chrome остались с UTC и en-US, Camoufox был ограничен Linux, и ничего не усиливалось сверх дефолтов из README. Настроенная конфигурация может дать другие результаты. Это то, что мы проверили бы следующим, а не то, что мы измерили.
  • Ваши цели будут другими. Использовать датацентровый или резидентный IP, зависит от того, что и где вы собираете. О стоимости — в статье резидентные или датацентровые прокси для скрапинга. Прежде чем запускать что-то подобное против реального сайта, проверьте robots.txt, условия сайта и правила обработки персональных данных.

Как воспроизвести

Тестовая обвязка — около 260 строк на Python, релей на 80 строк и парсер, который читает только сохранённый текст страниц. Ниже — конфигурация Patchright, которая в наших данных прошла чисто, со встроенными исправлениями из разделов выше: прогревочным запросом, который закрепляет sticky-сессию до того, как Chrome откроет параллельные соединения, и WebRTC-флагами Zendriver. Мы один раз запустили её против deviceandbrowserinfo через американский резидентный выход ("isBot": false); эта проверка не входит в 54 прогона.

import asyncio, os, tempfile, urllib.parse, urllib.request, uuid
from patchright.async_api import async_playwright

USER = os.environ["PROXY_USER"]          # имя пользователя прокси
PASS = os.environ["PROXY_PASS"]          # пароль прокси, никогда не хардкодьте его
GATE = "gate.proxyhat.com:8080"

def sticky_username() -> str:
    # новая сессия на каждый запуск браузера; -sid- сохраняет выходной IP между соединениями
    return f"{USER}-country-US-sid-{uuid.uuid4().hex[:10]}-ttl-30m"

def warm_up(username: str) -> str:
    # один последовательный запрос, чтобы закрепить сессию до параллельных соединений Chrome
    url = f"http://{urllib.parse.quote(username)}:{urllib.parse.quote(PASS)}@{GATE}"
    opener = urllib.request.build_opener(urllib.request.ProxyHandler({"http": url, "https": url}))
    return opener.open("https://api.ipify.org", timeout=30).read().decode()

async def main():
    username = sticky_username()
    print("session pinned to", warm_up(username))
    async with async_playwright() as p:
        ctx = await p.chromium.launch_persistent_context(
            user_data_dir=tempfile.mkdtemp(),
            channel="chrome",            # настоящий Google Chrome, как рекомендует README Patchright
            headless=False,              # на сервере запускайте под Xvfb
            no_viewport=True,
            proxy={"server": f"http://{GATE}", "username": username, "password": PASS},
            args=["--webrtc-ip-handling-policy=disable_non_proxied_udp",
                  "--force-webrtc-ip-handling-policy"],
        )
        page = await ctx.new_page()
        await page.goto("https://deviceandbrowserinfo.com/are_you_a_bot")
        await page.wait_for_function("document.body.innerText.includes('\"isBot\"')", timeout=45000)
        print(await page.evaluate("document.body.innerText.match(/\"isBot\": (true|false)/)[0]"))
        await ctx.close()

asyncio.run(main())

Суффикс имени пользователя — синтаксис ProxyHat (-country-US для таргетинга, -sid-…-ttl-30m для sticky-сессии). Подставьте формат своего провайдера. Чтобы проверить выход перед долгим прогоном, бесплатный прокси-чекер покажет, что видит сайт. Чтобы оценить ячейку так же, как мы:

  1. Запускайте свежий браузер на каждый прогон, открывайте каждую страницу в новой вкладке и ждите, пока на экране не появится собственный текст вердикта страницы. Не используйте фиксированный sleep. CreepJS мы давали 6 дополнительных секунд после появления оценок, потому что он продолжает вычисления.
  2. Сохраняйте document.body.innerText и полностраничный скриншот перед закрытием вкладки.
  3. Парсите только то, что вывела страница, например JSON "isBot" на deviceandbrowserinfo, пары Normal/Robot на BrowserScan и «N% headless» на CreepJS. Всё остальное — «unparsed».
  4. Записывайте выходной IP в начале и сравнивайте с IP, который показывает последняя страница. Если они различаются, сессия не была sticky.
  5. Считайте байты прокси за каждый прогон, чтобы фоновый трафик проявился раньше, чем счёт.

Что с этим делать

Сначала исправьте браузер: стоковый Playwright ловили с обоих IP, четыре стелс-инструмента в headful не ловили ни с одного. Работайте в headful-режиме (на серверах — с Xvfb), если не измерили, что headless проходит ваши цели. Затем сделайте сетевую картину согласованной: приведите часовой пояс в соответствие с выходным IP, заблокируйте WebRTC или пустите его через прокси и убедитесь, что sticky-сессия действительно «липкая». Резидентный прокси добавляйте только после этого — и будьте готовы к тому, что вендоры, умеющие распознавать прокси, всё равно узнают многие резидентные IP. IP решает, начнёте ли вы с ярлыком датацентрового трафика. Браузер решает, пометят ли вас как бота.

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

Спасает ли резидентный прокси Playwright от обнаружения как бота?

На протестированных нами страницах — нет. Стоковый Playwright помечали deviceandbrowserinfo, BrowserScan и playground от Fingerprint во всех 10 его headful-прогонах — и с датацентрового IP, и через американский резидентный прокси. Пометки шли от сигналов на стороне браузера вроде navigator.webdriver, которые IP не меняет.

Что лучше проходит тесты на ботов: Patchright, nodriver или Camoufox?

В headful-режиме все три, плюс Zendriver, почти во всех прогонах прошли все проверки автоматизации на sannysoft, BrowserScan, deviceandbrowserinfo, playground от Fingerprint и Pixelscan. Pixelscan один раз пометил Patchright и один раз Zendriver. В одном headless-прогоне на каждого Patchright и nodriver пометили несколько страниц, Zendriver — deviceandbrowserinfo, Camoufox — ни одна. Различия проявились в обработке WebRTC и часового пояса, а не в вердиктах об автоматизации.

Почему браузер показывает IP моего сервера, хотя я использую прокси?

WebRTC может отправить STUN-запрос по UDP в обход HTTP-прокси, и это раскрывает реальный публичный IP машины. В наших прогонах Playwright, Patchright и nodriver раскрывали так IP хоста в каждом прогоне через прокси. Флаги Chrome, которые Zendriver ставит по умолчанию, блокируют UDP мимо прокси, а Camoufox подменял адрес на выход прокси.

Почему sticky-сессия прокси меняет IP при открытии браузера?

В наших тестах несколько параллельных первых соединений на совершенно новый ID сессии выходили с разных IP, прежде чем сессия закреплялась за одним. Chrome при старте открывает много соединений, поэтому первая и последующие страницы видели разные IP в 11 из 12 прогонов. Один последовательный запрос на новой сессии перед запуском браузера сохранил единый IP в 4 из 4 прогонов.

Готовы начать?

Резидентные, ISP и мобильные прокси в 195+ странах. Создайте бесплатный аккаунт.

Создать бесплатный аккаунт
← Вернуться в Блог