navigator.webdriver
Флаг в браузере, который сообщает странице, что браузером управляет программа. Один из признаков автоматизации, но не единственный.
Стандарт WebDriver требует, чтобы браузер под управлением автоматики
выставлял navigator.webdriver = true. Selenium, Puppeteer, Playwright
по умолчанию так и делают — и скрипт на странице видит это одной строкой.
Серьёзные боты флаг прячут: ставят патчи, подменяют свойства. Поэтому один этот признак ничего не решает, но в сумме с другими — отсутствие плагинов, странные размеры окна, несовпадение заявленного браузера с тем, что видно изнутри страницы, — даёт заметный вес. Именно так работает скрипт защиты: он собирает несколько десятков технических признаков и отправляет их движку, ничего не зная о содержимом страницы.
Что с этим делать
Страницы о защите от того, что описано выше: как это выглядит на сайте и что делает BotBan.
Смежные термины
Подробнее в блоге
- Один запрос под микроскопом: как сервис решает, бот перед ним или человек Что успевает произойти между «пришёл запрос» и «отдали страницу»: какие признаки смотрим, чему не верим и почему сомнение всегда в пользу посетителя.
- Признаки бота на сайте: как отличить программу от человека Признаки по уровням: сначала то, что видно серверу, потом то, что заметно только изнутри браузера. И почему опираться на любой из них по отдельности опасно.