Урок 24. Использование прокси и изменение user-agent в Selenium

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

Что такое прокси и user-agent

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

Настройка прокси в Selenium

Для работы с прокси в Chrome через Selenium нужно передать настройки через ChromeOptions.
Бесплатные прокси можно найти на сайтах вроде free-proxy-list.net или us-proxy.org.

from selenium import webdriver
from selenium.webdriver.common.by import By
import time

proxy = "223.135.156.183:8080"  # Замените на ваш рабочий прокси
# === Часть 1. Вывод реального IP ===
driver = webdriver.Chrome()
driver.get("https://httpbin.org/ip")

real_ip = driver.find_element(By.TAG_NAME, "body").text
print("Реальный IP:", real_ip)

time.sleep(5)  # Пауза 5 секунд

driver.quit()

# === Часть 2. Вывод IP через прокси ===

options = webdriver.ChromeOptions()
options.add_argument(f'--proxy-server={proxy}')

driver = webdriver.Chrome(options=options)
driver.get("https://httpbin.org/ip")

proxy_ip = driver.find_element(By.TAG_NAME, "body").text
print("IP через прокси:", proxy_ip)

driver.quit()

Результат

Изменение user-agent

Изменение user-agent позволяет вашему скрипту маскироваться под другой браузер или устройство.

from selenium import webdriver
import time

user_agent = "Mozilla/5.0 (iPhone; CPU iPhone OS 16_0 like Mac OS X) \
AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.0 Mobile/15E148 Safari/604.1"

options = webdriver.ChromeOptions()
options.add_argument(f"user-agent={user_agent}")

driver = webdriver.Chrome(options=options)
driver.get("https://www.whatismybrowser.com/detect/what-is-my-user-agent")
print(driver.title)
time.sleep(7)

driver.quit()

Результат

Комбинирование прокси и user-agent

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

options = webdriver.ChromeOptions()
options.add_argument(f'--proxy-server={proxy}')
options.add_argument(f"user-agent={user_agent}")

driver = webdriver.Chrome(options=options)
driver.get("https://httpbin.org/ip")
driver.quit()

Советы

  • Прокси желательно выбирать с высокой скоростью и стабильностью.
  • Смена user-agent помогает тестировать сайты под разными устройствами.
  • Бесплатные прокси часто быстро перестают работать — проверяйте актуальность.
  • Эти методы полезны при массовом сборе данных с сайтов и обходе ограничений.

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

Больше уроков по парсингу на parsertools.ru/lessons.