КАК ИСПОЛЬЗОВАТЬ PROXY POLAND С SELENIUM
Примеры кода на Python и Node.js для маршрутизации Selenium WebDriver через выделенные мобильные прокси 4G/5G. Он описывает рекомендуемый протокол, формат учётных данных, процесс ротации, проверку подключения и практические случаи, где выделенный польский мобильный IP повышает надёжность автоматизации, парсинга или работы с аккаунтами.
В Selenium proxy должен соответствовать тестируемой сессии, а не меняться случайно между шагами. Подключите endpoint Proxy Poland до открытия driver, подтвердите видимый IP и только затем запускайте flow так, как его прошел бы обычный пользователь. Это дает более реалистичную проверку логина, checkout, поиска или цен, видимых из Польши.
ПОЧЕМУ SELENIUM + PROXY POLAND
Selenium — самый распространённый фреймворк автоматизации браузера. Маршрутизируя Selenium через выделенные мобильные прокси 4G/5G от Proxy Poland, вы можете скрейпить данные, запускать тесты и автоматизировать задачи с настоящими мобильными IP, которые обходят антибот-обнаружение.
Настройку Selenium проверяйте с тем же протоколом прокси, профилем браузера, целевым сайтом и рабочим процессом аккаунта, которые будут использоваться в продакшене. До масштабирования проверьте видимый IP, DNS-маршрут, ASN, устойчивость сессии, поведение ротации и состояние входа.
ИНСТРУКЦИЯ ПО НАСТРОЙКЕ
- 01
Установите зависимости
Установите Selenium и webdriver для вашего браузера:
pip install selenium webdriver-manager # or for Node.js: npm install selenium-webdriver
- 02
Получите данные прокси
Зарегистрируйтесь на proxypoland.com и получите IP прокси, порт, логин и пароль.
- 03
Настройте Chrome с прокси (Python)
Настройте Chrome WebDriver с SOCKS5 прокси:
from selenium import webdriver from selenium.webdriver.chrome.options import Options PROXY = "socks5://username:password@proxy-ip:port" options = Options() options.add_argument(f'--proxy-server={PROXY}') driver = webdriver.Chrome(options=options) driver.get('https://whatismyipaddress.com') print(driver.title) driver.quit() - 04
Настройте HTTP прокси (Python)
Альтернативная конфигурация HTTP прокси:
from selenium import webdriver from selenium.webdriver.chrome.options import Options PROXY = "http://username:password@proxy-ip:port" options = Options() options.add_argument(f'--proxy-server={PROXY}') driver = webdriver.Chrome(options=options) driver.get('https://httpbin.org/ip') print(driver.page_source) driver.quit() - 05
Настройте с Node.js
Selenium WebDriver с прокси в Node.js:
const { Builder } = require('selenium-webdriver'); const chrome = require('selenium-webdriver/chrome'); const options = new chrome.Options(); options.addArguments( '--proxy-server=socks5://username:password@proxy-ip:port' ); const driver = new Builder() .forBrowser('chrome') .setChromeOptions(options) .build(); await driver.get('https://httpbin.org/ip'); console.log(await driver.getTitle()); await driver.quit(); - 06
Добавьте ротацию IP
Ротация IP между сессиями скрейпинга:
import requests def rotate_ip(): """Call the mobile proxy rotation API""" response = requests.get( 'https://your-proxy-ip:port/rotate', auth=('username', 'password') ) return response.json() # Rotate before each session rotate_ip() driver = webdriver.Chrome(options=options) # ... scrape with new IP - 07
Проверьте ваш IP
Убедитесь, что Selenium использует IP прокси:
driver.get('https://httpbin.org/ip') ip_text = driver.find_element('tag name', 'pre').text print(f'Current IP: {ip_text}') # Should show a Polish mobile IP
ПРОФЕССИОНАЛЬНЫЕ СОВЕТЫ
Используйте SOCKS5 для полной маршрутизации трафика, включая DNS-запросы
Добавьте флаг --headless для продакшн-скрейпинга
Реализуйте экспоненциальную задержку для сайтов с ограничением скорости
Ротируйте IP между загрузками страниц для масштабного скрейпинга
Используйте undetected-chromedriver для сайтов с продвинутым обнаружением ботов
ОТЛИЧНО ПОДХОДИТ ДЛЯ
FAQ
Какой протокол прокси лучше для Selenium?+
SOCKS5 для максимальной совместимости и предотвращения утечек DNS. HTTP работает для базового скрейпинга, но SOCKS5 маршрутизирует весь трафик, включая DNS, через прокси.
Можно ли использовать Selenium с undetected-chromedriver и этими прокси?+
Да. undetected-chromedriver + мобильные прокси Proxy Poland — лучшая комбинация для скрейпинга защищённых сайтов. Мобильный IP обходит обнаружение по IP, а undetected-chromedriver обрабатывает проверки отпечатков браузера.
Как обработать аутентификацию прокси в Selenium?+
Для Chrome включите данные в URL прокси: socks5://user:pass@host:port. Для Firefox используйте расширение аутентификации прокси или selenium-wire, который обрабатывает аутентификацию прозрачно.
Можно ли запускать headless Selenium с этими прокси?+
Да. Добавьте --headless=new в опции Chrome. Прокси работает идентично в headless-режиме. Для сайтов, обнаруживающих headless-браузеры, используйте undetected-chromedriver.
Как быстро можно скрейпить с мобильными прокси по сравнению с дата-центром?+
30-100 Мб/с пропускной способности на наших 4G/5G соединениях. Хотя это медленнее чистой скорости дата-центра, преимущество в том, что вас не блокируют. Один успешный запрос через мобильный прокси ценнее 100 заблокированных запросов через IP дата-центра.
Какая конфигурация WebDriver capabilities устанавливает Proxy Poland прокси?+
Используйте Proxy capability: from selenium.webdriver.common.proxy import Proxy, ProxyType; p = Proxy({'proxyType: ProxyType.MANUAL, 'httpProxy': 'host:port', 'sslProxy': 'host:port', 'socksProxy': 'host:port', 'socksVersion': 5}); options.proxy = p. Это кроссбраузерный способ. ChromeOptions также принимает options.add_argument('--proxy-server=socks5://host:port'); метод capability работает и в Chrome, и в Firefox без браузероспецифичного кода.
Как передать флаг --proxy-server в chromedriver с авторизацией?+
options.add_argument(f'--proxy-server=http://{host}:{port}') или socks5://. Флаг не принимает user:pass — Chromium молча удаляет учётные данные. Для авторизованных Proxy Poland прокси создайте небольшое Chrome расширение, которое внедряет credentials через chrome.webRequest.onAuthRequired (manifest v2) или chrome.declarativeNetRequest (v3), затем загрузите через options.add_extension(proxy-auth.zip'). selenium-wire — более простая обёртка, которая делает это автоматически.
Поддерживает ли undetected-chromedriver SOCKS5 от Proxy Poland с авторизацией?+
Да — undetected-chromedriver наследует семантику --proxy-server от Chrome, поэтому SOCKS5 без авторизации работает через options.add_argument. Для авторизованного SOCKS5 от Proxy Poland установите selenium-wire вместе с uc и используйте seleniumwire_options={'proxy: {'http: 'socks5://user:pass@host:port', 'https': 'socks5://user:pass@host:port'}'}'. uc.Chrome(seleniumwire_options=...) запускается с внедрённой авторизацией. uc 3.5+ явно поддерживает этот паттерн.
Как установить часовой пояс/локаль браузера в соответствии с польским IP оператора в Selenium?+
Chrome DevTools Protocol через execute_cdp_cmd. driver.execute_cdp_cmd('Emulation.setTimezoneOverride', {'timezoneId: 'Europe/Warsaw'}'); driver.execute_cdp_cmd('Emulation.setLocaleOverride', {'locale: 'pl-PL'}'); driver.execute_cdp_cmd('Emulation.setGeolocationOverride', {'latitude: 52.2297, 'longitude': 21.0122, 'accuracy': 100}). Выполняйте сразу после инициализации драйвера. Без этого Selenium раскрывает ваш локальный часовой пояс через JS Date.getTimezoneOffset — это сигнал #1 для антибот-систем.
Можно ли запустить несколько Selenium Grid с разными прокси Proxy Poland?+
Да — Selenium Grid 4. Настройте каждую ноду через --selenium-manager-config или аргументы драйвера. Передавайте capabilities при создании сессии: driver = webdriver.Remote(command_executor='http://grid:4444', options=options), где options содержит прокси Proxy Poland для этой сессии. Grid hub направляет на ноду с соответствующими capabilities. Для 50+ параллельных сессий запускайте ноды в Docker с одним прокси на контейнер.
Как ротировать IP в середине сессии Selenium без потери драйвера?+
Нельзя изменить прокси работающего Chromium без перезапуска — Chromium читает --proxy-server только при запуске. Решения: (1) вызвать /rotate API Proxy Poland, который меняет базовый IP польского оператора, сохраняя host:port постоянными — драйвер продолжает работать с новым IP автоматически. (2) Закрыть драйвер и перезапустить с новым прокси. Вариант 1 — стандартный паттерн для временной ротации в скраперах.
Selenium 4 vs Selenium 3 для Proxy Poland — есть ли различия в совместимости?+
Selenium 4 — рекомендуемая версия. Синтаксис Proxy capability идентичен, но Selenium 4 добавил нативную поддержку CDP (driver.execute_cdp_cmd), что упрощает переопределение часового пояса/локали/геолокации. Selenium 3 требует дополнительные зависимости (пакет chrome-devtools-protocol для Python) для CDP. Remote API Selenium 4 также поддерживает W3C bidi, что улучшает anti-detect в современном Chrome. Обновляйтесь, если ещё на 3.x.