Как сайт может определить selenium, и как это обойти
Возникла проблема, что сайт обнаруживает selenium и дает капчу, которую невозможно пройти. Используется selenium на java, браузер - Chrome. Может попробовать firefox или использовать coockie? Вот опции, которые используются при создании драйвера:
ChromeOptions options = new ChromeOptions();
options.addArguments("user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36");
options.setExperimentalOption("useAutomationExtension", false);
options.addArguments("--disable-blink-features=AutomationControlled"); // Убираем флаг автоматизации
options.addArguments("--start-maximized");
options.addArguments("--no-sandbox");
options.addArguments("--incognito");
String script = "delete window.cdc_adoQpoasnfa76pfcZLmcfl_Array; " +
"delete window.cdc_adoQpoasnfa76pfcZLmcfl_JSON;" +
"delete window.cdc_adoQpoasnfa76pfcZLmcfl_Object;" +
"delete window.cdc_adoQpoasnfa76pfcZLmcfl_Promise;" +
"delete window.cdc_adoQpoasnfa76pfcZLmcfl_Proxy;" +
"delete window.cdc_adoQpoasnfa76pfcZLmcfl_Symbol;";
Map<String, Object> params = new HashMap<>();
params.put("source", script);
driver.executeCdpCommand("Page.addScriptToEvaluateOnNewDocument", params);
Такой код обходит Cloudflare, но не hCaptcha
Ответы (1 шт):
Вам не удастся обойти детектирование selenium простой сменой браузера на firefox. Лучшее, что можно сделать в этом случае - копаться в заголовках, сверяя и подделывая каждый http - заголовок. Причем, само по себе это не является панацеей: возможно, придётся эмулировать поведение пользователя на сайте, включая перемещение мышки, паузы, прокрутку страницы и т.п.
Возможно, лучшее решение - интегрировать в свой проект разгадывание капчи, например, при помощи одного из проектов типа такого (это не реклама, просто с ним я работал, и понимаю, что с его помощью задача - решаема)