RPA Automation Panel
Node.js-сервер с веб-панелью для мультиаккаунтной браузерной автоматизации: антидетект-браузеры, пулы прокси, решатели капч и AI-агент.
Проблема
Автоматизация на масштабе аккаунтов — это жонглирование антидетект-браузерами, прокси, капчами, почтой/SMS и логикой под каждый сайт, обычно в виде кучи несвязанных скриптов, которыми невозможно управлять.
Результат
Единая веб-панель, запускающая многопоточную автоматизацию по 15+ сайтам: подключаемые решатели капч, гео-пул прокси, антидетект-профили, обмен с Google Sheets и LLM-агент для восстановления.
Технологии
Обзор
RPA Automation Panel — Node.js-сервер с браузерной панелью управления для мультиаккаунтной браузерной автоматизации на масштабе. С одного экрана оператор выбирает сайты, задаёт число потоков, подключает прокси и Google Sheets, запускает — и видит прогресс в реальном времени. Под капотом панель управляет антидетект-браузерами (Octo Browser, AdsPower, CloakBrowser) через Playwright, решает капчи, получает коды по почте и SMS и передаёт управление LLM-агенту, когда сценарий слишком динамичный для детерминированного скрипта.
Это продакшн-эволюция BAS-ботов из этого портфолио: та же дисциплина мультиаккаунтной автоматизации, пересобранная на архитектуре Node.js + Playwright — и при этом сохранён мост к BAS через встроенные XML-проекты и модули.
Проблема
Автоматизация на уровне аккаунтов — это не одна задача, а десяток сразу: у каждого сайта свой флоу, каждому нужен свежий антидетект-отпечаток и гео-подходящий прокси, капчи бывают полудюжины видов, регистрации требуют одноразовой почты и SMS, и всё это должно работать в много потоков параллельно, не натыкаясь на анти-бот защиту. Сделанное обычным способом, это превращается в кучу разовых скриптов — которыми невозможно управлять, мониторить или расширять, и которые бесполезны всем, кроме автора.
Решение
Панель превращает этот хаос в управляемую систему. Слой воркеров управляет браузерными слотами для параллельного выполнения; каждый сайт — самостоятельный конфиг-модуль за общим контрактом, поэтому сайты включаются независимо, а новые добавляются без правки ядра. Сквозные задачи живут как переиспользуемые модули — решатели капч, почта/SMS, Google Sheets — которые может вызвать любой сайт. Пул прокси на SQLite распределяет прокси по географии, а когда детерминированный сценарий упирается в стену, прогон передаётся LLM-агенту browser-use (Python), который работает в том же открытом браузере по CDP и дожимает шаг.
Возможности
- Веб-панель управления (Express-сервер на
localhost:60000): выбор сайтов, число потоков, настройка прокси и Sheets, старт/стоп, живая консоль - Многопоточный движок воркеров с управлением браузерными слотами для параллельных прогонов
- Поддержка антидетект-браузеров: Octo Browser, AdsPower, CloakBrowser через Playwright/CDP
- 15+ готовых конфигов сайтов (Abra, Airbnb, Cainiao, igitems, MyyShop, Klook, Yandex, Exmo, Truth Social и др.) за единым контрактом
- Подключаемые решатели капч: Cap.Guru, RuCaptcha, SCTG, FunCaptcha, Geetest (слайдер), puzzle-captcha, Arkose, Cloudflare Turnstile
- API одноразовой почты и SMS для регистраций и подтверждений
- Интеграция с Google Sheets для входных данных и записи результатов
- Гео-пул прокси в SQLite с проверкой, импортом и исправлением кодов стран
- AI-агент восстановления (browser-use + цепочка fallback-моделей OpenAI) для динамических интерфейсов
- Обнаружение и кодогенерация сайтов — исследовать сайт и автоматически сгенерировать новый конфиг
- Мост к BAS: встроенные XML-проекты/модули для Browser Automation Studio
- Автообновление из релизов GitHub, двуязычный интерфейс (i18n), профилирование прогона и экспорт результатов
Процесс разработки
Архитектура чисто разделена на сервер, воркер и модули, чтобы сложные части оставались изолированными. Воркер владеет параллелизмом и жизненным циклом браузера; сайты владеют только своими шагами; модули — переиспользуемой обвязкой, общей для всех сайтов. Именно эта граница делает панель расширяемой: добавить сайт — это написать один конфиг по контракту, а добавить возможность (новый сервис капчи, нового почтового провайдера) — это написать один модуль, доступный всем. Глубокий набор тестов (e2e по каждому сайту, юниты по решателям капч, прокси и выбору воркеров) держит систему с таким числом подвижных частей честной. Новейший слой — LLM-агент — добавлен ровно там, где детерминированные скрипты слабее всего: восстановление и нестабильные UI, — не заменяя быстрый предсказуемый путь.
Результаты
- Одна панель управляет мультиаккаунтной автоматизацией, которая раньше была разрозненными нерабочими скриптами
- 15+ сайтов работают за единым контрактом, распараллеленные по потокам
- Единый набор капча/почта/SMS/прокси, переиспользуемый любым сайтом, вместо переписывания
- Антидетект-браузеры и гео-пул прокси держат прогоны устойчивыми к анти-бот защите
- LLM-агент спасает флоу, которые не вытягивают детерминированные сценарии, не замедляя остальное
Выводы
Автоматизация на масштабе — это в первую очередь задача интеграции, а уже потом скриптинга. Выигрыш дали чистые швы — воркер против сайта против модуля — чтобы параллелизм, логика сайтов и общие сервисы развивались каждый по отдельности. С этими границами экзотические части (антидетект-отпечатки, гео-пул прокси, fallback-агент на LLM) стали модулями для подключения, а не переписыванием, и тот же паттерн «модуль на цель + общий контракт» из ранней работы на BAS перешёл прямиком в куда более крупную систему.