Поможет ли антидект браузер или прокси в случаи блокировки по ip
Я написал программу которая проверяет промокоды, используя selenium Python, постоянно вводя их. Но оказалось что сайт такое сразу замечает и отправляет в бан (мне кажется по ip, поскольку регистрации там нету). Я сначала подумал что стоит использовать прокси, но потом вспомнил про антидект браузеры (ещё и про модули, которые помогают скрыться при работе с selenium). И у меня вопрос - помогут ли антидект браузеры в моем случаи или же использовать прокси?
Ответы (1 шт):
Автор решения: Игорь Крикливый
→ Ссылка
по моему опыту лучшим решением это будет подключить прокси к selenium. Но по моему опыту лучше использовать seleniumwire, ниже код который возможно даст вам ответ на вопрос
import time
from seleniumwire import webdriver
from selenium.webdriver.common.by import By
# Данные для аутентификации
login = "…"
password = "…"
# Прокси-адрес и порты
proxy_address = "…"
http_port = …
socks_port = …
# Формируем строку с адресом прокси для HTTP и SOCKS5
proxy_http = f'http://{login}:{password}@{proxy_address}:{http_port}'
proxy_socks5 = f'socks5://{login}:{password}@{proxy_address}:{socks_port}'
# Статический User-Agent
static_user_agent = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36"
# Настройки прокси и User-Agent
seleniumwire_options = {
'proxy': {
'http': proxy_http,
'https': proxy_http, # Если прокси поддерживает HTTPS, используйте тот же адрес
'socks': proxy_socks5,
'verify_ssl': False,
},
}
# Инициализируем драйвер с использованием настроек прокси и User-Agent
driver = webdriver.Chrome(seleniumwire_options=seleniumwire_options)
driver.header_overrides = {'User-Agent': static_user_agent}
# Открываем страницу для проверки работы прокси
driver.get('http://httpbin.org/ip')
# Выводим IP-адрес, который виден через прокси
print(driver.find_element(By.TAG_NAME, 'body').text)
time.sleep(10)
# Закрываем браузер
driver.quit()
```