Графические селекторы в BAS: клик по изображению
Графические экшн-блоки в Browser Automation Studio — находить элементы и взаимодействовать с ними по их отрисованному изображению, когда селекторы CSS и XPath не могут их определить.
В большинстве случаев вы нацеливаетесь на элементы по CSS или XPath. Но некоторые страницы это побеждают — нестандартный шрифт, интерфейс, нарисованный как графика, элемент без стабильной DOM-зацепки. Для них BAS позволяет выбирать элементы графически, по их изображению.
Что такое графический селектор
BAS позволяет выделять элементы графически правой кнопкой мыши и работать с ними — и у этого способа есть своё контекстное меню, схожее с обычным. Под капотом элемент определяется по его отрисованному изображению в формате base64, и BAS ищет это изображение на странице, чтобы его найти. Вы задаёте точность совпадения от 0 до 100, чтобы управлять тем, насколько точным должно быть визуальное совпадение.
Графические экшн-блоки
Графическое контекстное меню повторяет обычные действия с элементом, но работает по изображению, а не по селектору:
- Двигать мышь и кликнуть по элементу — найти base64-изображение на странице, подвести мышь и кликнуть, со скроллингом и выбранным типом клика (левая, правая, двойной).
- Кликнуть по элементу — кликнуть по найденному base64-элементу без движения мыши.
- Двигать мышь над элементом — подвести курсор к верхней границе найденного элемента (наведение).
- Ввод текста — ввести текст в элемент, ровно как обычное действие ввода, но нацеленное на графический элемент. Это ключевое: когда страница использует нестандартный шрифт и единственный способ определить поле — визуально, графический ввод — это то, чем вы его заполняете.
- Очистить текст — очистить текстовое поле графического селектора.
- Проверить существование — проверить, существует ли графический элемент на странице в формате base64, как и проверка обычного элемента.
Когда к нему обращаться
Графические селекторы — это запасной вариант, а не основной. Они медленнее и хрупче DOM-селекторов — визуальное изменение элемента может сломать совпадение, а поиск по изображению дороже CSS-запроса. Используйте CSS или XPath всегда, когда у элемента есть пригодная DOM-зацепка, и опускайтесь к графическим селекторам, только когда её нет: поля с кастомным шрифтом, элементы, отрисованные на canvas, или всё, где как оно выглядит — единственное, что можно надёжно зафиксировать.
Вопросы и ответы
Что такое графический селектор в BAS?
Графический селектор определяет элемент по его отрисованному изображению (base64), а не по пути CSS или XPath. BAS ищет это изображение на странице и действует с ним — полезно, когда обычный DOM-селектор не может указать на элемент.
Когда использовать графический селектор вместо CSS или XPath?
Когда DOM-селекторы не работают — например, страница с нестандартным шрифтом или интерфейсом, отрисованным как графика, где единственный надёжный способ определить поле — по тому, как оно выглядит.
Ещё по теме
- Browser Automation Studio: полный практический гидГид
- Создаём первого бота в Browser Automation StudioПошаговый разбор создания первого рабочего бота в BAS — от пустого проекта до процесса, который ходит по страницам, извлекает данные и работает в несколько потоков.
- Настройка прокси в Browser Automation StudioКак правильно настроить прокси в BAS — типы прокси, привязка по потокам, ротация и проверки, которые не дают мультиаккаунт-ботам попасть под бан.
- Поиск элементов в BAS: селекторы, которые не ломаютсяКак работает поиск элементов в Browser Automation Studio — CSS против XPath, почему записанные селекторы ломаются и как писать селекторы, переживающие изменения страницы.