Сайт детектит webdriver
Вообщем пишу авторегер на сайте ea.com, но ни в какую не дает зарегать акк через webdriver. даже если заполнять формы руками в открытом selenium, все равно выдает ошибку. Пробовал: разные браузеры undetected chrome driver разные proxy разные опции для драйвера. Код обходит все проверки на сайте Antibot, а на этом сервисе зарегать не дает)
options = uc.ChromeOptions()
useragent = UserAgent()
options.add_argument("--log-level=3")
# options.add_argument("--headless")
# options.add_experimental_option('excludeSwitches', ['enable-logging'])
options.add_argument(f"user-agent={useragent.random}")
options.page_load_strategy = 'eager'
options.add_argument('--disable-blink-features=AutomationControlled')
options.add_extension('EditThisCookie1.6.3.0.crx')
options.add_argument('--disable-infobars')
# options.add_experimental_option("excludeSwitches", ["enable-automation"])
driver = uc.Chrome(
seleniumwire_options=seleniumwire_options,
options=options,
)
Ответы (1 шт):
Была такая же проблема. Сейчас есть сервисы, которые палят отпечатки webdriver, например такие как js переменные, генерируемые им на странице и подменой заголовков селениума вы ничего не добьетесь в таком случае.Такие сервисы могут встраиваться на сайт через javascript.
В общем случае, скрипты обнаружения Selenium работает следующим образом: они проверяют наличие предопределенных переменных JavaScript, которые появляются при работе вебдрайвера. Скрипты обнаружения ботов обычно выглядят как что-нибудь, содержащее слово «selen». / "web-driver" в любой из переменных (объекта окна), а также переменных документа, называемых $cdc_ и $wdc_. Конечно, все это зависит от того, какой браузер вы используете. Все разные браузеры предоставляют разные вещи.В некоторых кейсах прокатывает правка самого webdriwer-а, переименовывание определенных переменные и тогда, возможно, Вас пропустят. Подробнее об этом можете прочитать в данном топике: https://stackoverflow.com/questions/33225947/can-a-website-detect-when-you-are-using-selenium-with-chromedriver вообще рекомендую данный топик к внимательному изучению, в том числе комментариев, там очень много для Вас полезного.
Но этот способ работает не для всех антифрод-систем, например не работает для этой: https://datadome.co/bot-management-protection/tracking-modified-selenium-chromedriver/ (ссылка в рф не доступна без VPN/Proxy) - тоеть если на сайте стоит скрипт от этих ребят, то даже правка исходников вебдрайвера Вам наврятли поможет.
Мне в подобном кейсе помог переход с selenium на Playwright. Вообще изначально Playwright это больше про js, но у них есть версия и для python, на которую я успешно перешел в своём кейсе при автоматизации работы с сайтом итальянских гос.услуг. Вообще очень рекомендую playwright как современную альтернативу морально и технически устаревшему selenium, его труднее обнаружить и сним намного проще работать, там нет косяков и костылей селениума, которые только прибавляются с каждым новым релизом.