Перейти к содержимому
PD
Browser Automation Studio 7 мин чтения

Модули BAS простыми словами: LEGO-модель Browser Automation Studio

Модули — это коробки, в которых лежит всё, что умеет BAS. Разбираем LEGO-модель, иерархию экшн-блок → функция → модуль и деление на основные и дополнительные.

PD

Pavel Duglas

AI Automation & MVP Architect

Если структура BAS казалась вам чем-то абстрактным, то на модулях она становится осязаемой. Модуль — это коробка, в которой физически лежит то, что умеет BAS. А как только видишь аналогию за этим, вся модульная архитектура перестаёт пугать.

LEGO-модель

Представьте, что вы заходите в магазин с корзиной для продуктов. Вам приглянулся набор конструктора LEGO в красивой коробке — кладёте его в корзину. Но коробка не пустая: она состоит из маленьких деталей LEGO.

Это ровно ложится на BAS:

  • Корзина — это модуль, контейнер, который вы несёте.
  • Каждый набор LEGO внутри — это функция, самостоятельный комплект под одну задачу.
  • Отдельные детали LEGO — это экшн-блоки, мельчайшие части, которые вы собственно соединяете.

Каждый модуль уникален и содержит ровно те компоненты — экшн-блоки, — которые вы будете использовать при создании функций и автоматических сценариев. Модуль — это не сама работа, это коробка, которая делает нужные детали доступными.

Концепция модульной структуры

BAS построен на трёх уровнях, и каждый собирается из нижнего:

  1. Набор действий — разработчик комбинирует набор действий для решения конкретной задачи.
  2. Функция — эти действия помещаются в специальные контейнеры, чтобы вызывать их многократно и с параметрами.
  3. Модуль — из функций создаются специальные блоки, именуемые модулями, которые вы затем подключаете к проектам.

Прочитайте снизу вверх — и вот всё ремесло в одной строке: собрать блоки в функции, упаковать функции в модуль, подключить модуль к любому проекту, которому он нужен. Именно поэтому BAS масштабируется — вы перестаёте пересобирать одну и ту же логику и начинаете её импортировать.

Два вида модулей

Модули в BAS делятся на две группы: основные и дополнительные.

Основные модули

Набор экшн-блоков, к которым вы тянетесь чаще всего, — костяк почти любого проекта. К ним относятся:

Браузер, логика скрипта, инструменты, сеть, ожидание, HTTP-клиент, дата и время, файловая система, смена отпечатка браузера, список, путь, работа с профилями, ресурсы, строка, XPath, JSON, статистика скрипта, регулярные выражения.

Каждый решает конкретную задачу. Модуль браузер, например, даёт действие Загрузить, которое открывает сайт по URL; модуль JSON парсит и собирает JSON; ожидание управляет таймингом; смена отпечатка ротирует личность браузера. Если вы строите ботов, большинство из них вы тронете в первую же неделю.

Дополнительные модули

Это экшн-блоки, которые вы подключаете по мере необходимости. Если проект их не требует — спокойно обходитесь без них. К ним относятся:

Открыть/закрыть браузер, буфер обмена, эмуляция бездействия, асинхронный вызов функций, обработка изображений, почта, подтверждение телефона, управление процессами, отправить письмо, Telegram, часовой пояс, взаимодействие с пользователем, встроенные языки, Excel, база данных, URL, контрольная сумма, архивация, FTP, SQL.

Смысл дополнительных модулей — в охвате: иногда задаче нужно что-то специфическое, и под это уже есть коробка. Модуль обработки изображений редактирует загруженные фотографии и накладывает на них любой текст. Модуль Telegram служит для отправки уведомлений прямо в удобный мессенджер — идеально для «пингани меня, когда бот закончит или сломается». По умолчанию их не грузят; нужный достают, когда задача того требует.

Почему это важно на практике

Именно модульная модель не даёт растущему проекту в BAS свалиться в хаос. Вместо одного гигантского плоского скрипта вы получаете коробки возможностей, о которых можно рассуждать по отдельности, переиспользовать между проектами и передавать другим. Изучите основные модули глубоко — это 90% ежедневной работы, — а дополнительные держите как каталог, в который заглядываете, когда задача просит чего-то особенного. В этом и разница между борьбой с BAS и сборкой на нём.

Связанные услуги

Вопросы и ответы

Что такое модуль в BAS?

Модуль — это контейнер, объединяющий связанные экшн-блоки под конкретную область: браузер, сеть, JSON, файлы и так далее. Из этих блоков вы собираете функции, а модули подключаете к проектам, чтобы пользоваться их действиями.

Чем основные модули отличаются от дополнительных?

Основные модули покрывают действия, которые нужны почти в каждом проекте: браузер, логика, сеть, ожидание, HTTP-клиент, файлы, отпечатки, JSON и прочее. Дополнительные — Telegram, Excel, обработка изображений, SQL, FTP — подключаются только когда задача этого реально требует.

Как связаны экшн-блоки, функции и модули?

Экшн-блоки — отдельные шаги. Функции — контейнеры, группирующие блоки для переиспользования с параметрами. Модули — пакеты более высокого уровня, собранные из функций и блоков, которые вы подключаете к проекту. Это трёхуровневая иерархия: блок → функция → модуль.

Похожие кейсы

Похожие статьи

  • #bas
  • #браузерная-автоматизация
  • #модули
  • #архитектура
  • #rpa

Есть идея? Давайте превратим её в работающий продукт.

Пропустите месяцы неопределённости. Получите понятную архитектуру, рабочий MVP и систему, которую можно тестировать, продавать и масштабировать.