Если я отправлю гет запрос из консоли то увидит-ли меня сайт где именно я нахожусь?
Напрямую нет, но косвенно можно понять это по ip адресу исходящего запроса.
Если я будут использовать селениум то увидит-ли меня сайт где именно я нахожусь?
Напрямую нет, но косвенно можно понять это по ip адресу + гуглите, что такое утечки dns и как можно определить настоящий ip (минуя прокси) через webrtc.
Селениум хороший анти-детект браузер? Видел еще playwright он лучше?
Selenium - это вообще не антидетект браузер, а лишь программа, которая использует browser-driver для управления браузером. Selenium + undetected-chromedriver простая защита сайта не обнаружит, но вот средненькие антибот системы он уже часто не проходит. Playwright лучше определяется антибот системами.
Как обычно парсят сайты со сложной защитой? Где продаются такие боты?
Пишут свои приватные реализации ботов, которые обычно не продаются, т.к. прибыль от бота сильно выше его разовых продаж, а как только его продадут, так о нем сразу узнают те, кто пишет антибот системы. Либо используют готовые паблик сервисы, которые предоставляют api доступ по подписке с приличной стоимостью, но они не всегда в состояние преодолеть сложную защиту, т.к. этими же сервисами пользуются и те, кто пишут эту самую антибот защиту.
Как анти-бот системы определяют ботов наверное есть какие отличительные признаки?
Профессионально обнаружением ботов занимаются отдельные команды или даже целые компании (Radware, DataDome, Cloudflare, Imperva, Arkose Labs, HUMAN Security, Akamai, hCaptcha итп). Обнаружение сводится к прямому и косвенному методам.
Прямые методы обнаружения:
- Частота запросов и "доверие" (trust) к конкретному ip.
- Проверка заголовков User-Agent.
- Проверка выполнения JS.
- Обнаружение признаков использования драйверов браузеров, открытости DevTools итп.
- Шрифты: через js получают список шрифтов (откуда у вас Ubuntu шрифт на Андройде?), затем выборочно печатают на canvas изображение нужным шрифтом или печатают невидимый шрифт без канваса (применяют css свойство с найденным шрифтом), затем замеряют размеры результата.
- Видеокарта: через js рисуют на canvas невидимое изображение с цифрами, спецсимволами и смайликами, затем получают представление изображения в виде кода. Через WebGl можно нарисовать 3D изображение.
- Камера (а сколько у вас камер в наличие?).
- Гироскоп, компас, акселерометр (все это без разрешения работает на андройде).
- Анализ аудио рендеринга без разрешения на доступ к аудио (используется только программный аудио стек), где собираются уникальные артефакты обработки звука в зависимости от аппаратного обеспечения. Генерируется аудиосигнал, который обрабатывается через цепочку эффектов (фильтры, реверберация итп).
- Остальная проверка характеристик браузера->устройства: процессор, оператива, дисплей, плагины, часовой пояс, язык. У вас в браузере установлен русский язык, тайм-зона германии, последняя геолокация час назад в италии, а сейчас вы используете ip адрес гондураса - чистокровный человек, пропускаем! ;)
= Собираем данные, хэшируем и получают относительно уникальный отпечаток (fingerprint). Уникальность заявляется разная, вплоть до 99%.
Косвенные методы обнаружения:
- Частота запросов и "доверие" (trust) к конкретному ip - внезапно начался наплыв пользователей, да и еще примерно с одинаковыми характеристиками устройств.
- Нестандартный скролл/свайпы/клики у пользователей, ошибки и скорость ввода текста.
- Нестандартная реакция на всплывающие окна.
- Нестандартная последовательности посещенных страниц.
- Нестандартное количество проведенного времени на странице.
- Клики по невидимым для живого человека ссылкам, заполнение невидимых полей.
- Геолокация - только с разрешения, но после разрешения можно получить много косвенных данных для анализа.
= Собираем данные, заливаем в нейронку и сравниваем с эталонными пользователями.
Это лишь самые распространенные методы обнаружения, которые используют большинство топовых антибот систем.