Упростить и ускорить выполнение рутинной работы в браузере призвано расширение с открытым исходным кодом Automa. Оно доступно для веб-обозревателей на базе Chromium и позволяет создавать и гибко настраивать автоматизированные сценарии.
Как оно работает
На выбор доступно множество действий: открытие и закрытие вкладки, выполнение JS-кода, создание скриншотов, пролистывание страницы, клик на интерактивные элементы, заполнение полей, получение текста. Есть даже условия, которые зависят от состояния или наличия объекта на веб-сайте. Каждая команда представлена в виде блоков, которые соединяется друг с другом посредством протягивания «нити». В итоге получается выполняющаяся по очереди цепочка действий.
Главная страница расширения представлена четырьмя основными вкладками: недавние действия, список сценариев, именуемый Workflows, коллекции автоматизаций, история запусков. Для создания собственного сценария достаточно перейти в раздел Workflows и нажать кнопку New Workflow. После этого появится плитка, кликом по которой открывается окно редактирования.
Все условия и действия представлены в виде настраиваемых блоков. Они перетаскиваются со специальной панели мышью и редактируются по нажатию. Прелесть расширения именно в относительной простоте создания сценариев.
В режиме редактирования слева появляется панель со свойствами объекта — именно там настраивается веб-адрес страницы, которая будет открыта, и элементы, с которыми будет взаимодействие. Определить идентификатор элементов на любом сайте можно, кликнув на расширение в верхней панели браузера, и затем нажав на иконку с прицелом. Далее достаточно выбрать мышью нужное поле или кнопку и скопировать идентификатор из специального поля снизу.
Сценарии использования
Вариантов применения Automa много — всё зависит от желания и задач. Можно использовать расширение для заполнения форм, получения данных в виде файла, автонажатия кнопок по расписанию. В качестве примера я нашёл две простые, но полезные для себя автоматизации.
Поиск по почте
Для тех случаев, когда нужно проверять электронные письма от конкретного адресата, можно создать специальный сценарий. Он открывает страницу почты, кликает на поле поиска, вписывает нужного адресата и нажимает на кнопку поиска. Собственно, именно такие блоки действий и надо расставить при создании. Наибольшую сложность при работе с Gmail вызвало определение правильного идентификатора для кнопки поиска.
Экспорт данных из таблиц
С помощью расширения можно получать любые данные с сайтов и сохранять их в форматах JSON, CSV и в виде обычного файла. Самый показательный пример — экспорт таблицы с сайта NVIDIA. В ней собрано более 200 игр, поддерживающих DLSS и RTX. Следить за обновлениями таблицы вручную сложно, зато возможно каждый месяц запускать сценарий и сравнивать старый и новый файлы.
К сожалению, все данные сохраняются в не самой удобной структуре, однако этого достаточно для отслеживания новых игр и приложений в таблице.
Подводные камни
Automa — очень мощный инструмент, однако он неидеален. Есть целый ряд неприятных ограничений.
Рядовым пользователям будет непросто разобраться. Утилита выглядит довольно просто, она интуитивна, но у неопытных пользователей могут быть сложности с поиском нужных элементов на страницах и построением логики сценариев. Есть документация на английском, но она описывает только часть функций.
Не хватает вставки в формы из буфера обмена. В некоторых сценариях лично мне не хватало возможности вставлять в формы содержимое из буфера обмена, неважно, автоматически или вручную. Все сценарии полностью статичные, и заданные параметры нельзя менять во время запуска.
Работает не очень быстро. Расширение избавляет юзера от нескольких кликов и ввода текста, однако работает не моментально. Между выполнениями заданных действий присутствует заметная задержка.