Selenium webdriver: изменение флага navigator.webdriver для предотвращения обнаружения селена.JAVA

Программисты JAVA общаются здесь
Anonymous
Selenium webdriver: изменение флага navigator.webdriver для предотвращения обнаружения селена.

Сообщение Anonymous »

Я пытаюсь автоматизировать очень простую задачу на веб-сайте, используя селен и Chrome, но каким-то образом веб-сайт определяет, когда Chrome управляется селеном, и блокирует каждый запрос. Я подозреваю, что веб-сайт полагается на открытую переменную DOM, подобную этой https://stackoverflow.com/a/41904453/648236, для обнаружения браузера, управляемого селеном.

Мой вопрос: есть ли способ сделать флаг navigator.webdriver ложным? Я готов пойти так далеко, чтобы попытаться перекомпилировать исходный код селена после внесения изменений, но я не могу найти источник NavigatorAutomationInformation где-либо в репозитории https://github.com/SeleniumHQ/selenium

Любая помощь очень ценится

P.S: Я также попробовал следующее из https://w3c.github.io/webdriver/#interface

Код: Выделить всё

Object.defineProperty(navigator, 'webdriver', {
get: () => false,
});
Но свойство обновляется только после начальной загрузки страницы. Я думаю, что сайт обнаружит переменную до того, как мой скрипт будет выполнен.

Подробнее здесь: https://stackoverflow.com/questions/530 ... nium-detec

Вернуться в «JAVA»