Техническое задание на разработку screen-based RPA бота

Контекст и цель

Необходимо разработать программного робота (RPA) для автоматизации работы с веб-сервисом каталогов. Ключевая особенность - бот будет работать исключительно через анализ графического интерфейса (скриншоты), без доступа к исходному коду страницы (DOM), API или каким-либо внутренним элементам. Доступ к целевому сервису осуществляется через удалённый рабочий стол (RDP, VMware Horizon).

Основные функциональные требования

Базовые возможности взаимодействия

  • Захват изображения экрана или активного окна.
  • Эмуляция действий пользователя: клики мышью, прокрутка, ввод текста с клавиатуры, использование «горячих» клавиш.
  • Работа с буфером обмена: чтение скопированного текста для последующей обработки.

Распознавание интерфейса и навигация

  • Определение состояния интерфейса и проверка корректности текущего экрана.
  • Поиск элементов управления (кнопок, иконок, полей) на изображении с помощью сравнения шаблонов (image-based) и оптического распознавания текста (OCR).
  • Возможность находить элементы как по графическому шаблону, так и по текстовому содержимому.

Управление сценариями и логикой

  • Хранение сценариев (последовательностей шагов) в структурированных файлах (YAML/JSON).
  • Описание каждого шага сценария должно включать:
    • Ожидаемый тип/состояние экрана.
    • Цель поиска (текст, номер, графический элемент, синонимы).
    • Действие (клик, ввод, прокрутка, копирование).
  • Обработка таймаутов, ошибок и неожиданных событий (например, всплывающих окон).

Механизм адаптации и обучения

  • Ведение детальных логов успешных и неудачных шагов.
  • Возможность расширять библиотеки распознавания (например, добавлять новые варианты текста или изображений для поиска одного и того же элемента).
  • Оптимизация выполнения сценариев: кэширование удачных локаторов, сокращение количества поисковых операций для ускорения работы.
  • Система должна быть практичной, без избыточного усложнения («оверинжиниринга»).

Требования к результату

  • Рабочий прототип, готовый к тестированию в описанных условиях.
  • Чистая и расширяемая архитектура кода, позволяющая легко добавлять новые функции и сценарии.
  • Высокая скорость выполнения операций является критически важным требованием.

Автоматизация загрузки заказов из маркетплейса в 1С

Необходимо разработать решение для автоматической синхронизации новых заказов с маркетплейса Wildberries в систему 1С. Заказы должны создаваться в виде документов «Заказ клиента» с корректным заполнением всех полей согласно бизнес-логике.