Вопрос от пользователя (Менеджер по продажам Игорь): «Каждый день я вхожу на сайт нашего поставщика, качаю прайс-лист, потом загружаю его в нашу систему. Это отнимает полчаса. Я сделал робота для своей учетной системы, но как ему показать, что нужно делать на сайте в браузере? Там же нет привычных «окон» и «кнопок» как в программах!»
Суть проблемы: Веб-сайты в браузере — это не статичные программы, а динамические страницы. Кнопки, поля, таблицы могут менять свое расположение, а их внутренняя структура (HTML) сложна для восприятия. Чтобы робот мог работать с сайтом, ему нужен точный и надежный «адрес» каждого элемента (например, кнопки «Скачать»), который не изменится при обновлении страницы.
Что такое Мастер UI для веб (Редактор XPath)?
Представьте, что сайт — это огромный склад с тысячами коробок (элементов), сложенных по строгой иерархии. У каждой коробки есть уникальный ярлык с кодом. Мастер UI для веб — это ваш сканер и навигатор на этом складе.
- Он «сканирует» (выбирает) элемент на странице, когда вы на него кликаете.
- Он составляет «адрес» (XPath) этой коробки в общей структуре склада. Например: /html/body/div[3]/main/button[1] — это как адрес «Стеллаж А, Полка 5, Коробка 1».
- Он позволяет гибко редактировать этот адрес, чтобы он оставался актуальным, даже если вокруг что-то поменялось.
Как это работает простыми словами (главные шаги):
- Установите «ключ» (плагин). Для работы в браузере (Chrome, Edge, Яндекс) нужно один раз установить Puzzle RPA Plugin через магазин расширений. Это даст программе доступ к структуре сайта.
- «Выберите» элемент. В редакторе XPath в Puzzle RPA нажимаете кнопку «Выбрать», переключаетесь в браузер и просто кликаете на нужный элемент (кнопку, поле для логина).
- Смотрите и корректируете «адрес». В редакторе автоматически появится путь (XPath) и дерево элементов. Вы можете упростить этот путь, убирая лишние «узлы» в дереве, или сделать его устойчивее, добавляя уникальные атрибуты (например, @id="login_button").
- Проверяете. Нажимаете кнопку «Проверить» — инструмент покажет, сколько элементов на странице соответствует вашему пути, и подсветит их. Это гарантия, что робот найдет именно то, что нужно.
Решение и рекомендации:
- Используйте уникальные атрибуты. Самые надежные «приметы» для элемента — его id или name. В пути они выглядят как //button[@id='submit']. Это означает: «найди кнопку, у которой id равен 'submit'».
- Избегайте хрупких путей. Пути, которые слишком сильно зависят от номера (div[7]), могут сломаться, если на страницу добавят новый блок. Старайтесь привязываться к тексту, классу или другим стабильным признакам.
- Используйте переменные. Если вам нужно кликать на кнопку с меняющимся названием (например, «Заказ №123», «Заказ №124»), можно использовать переменную в XPath.
Итог простыми словами:
Если Мастер UI для десктопных программ — это фотоаппарат, то Мастер UI для веб — это умный сканер штрих-кодов для сайтов. Вам не нужно знать сложный язык HTML. Вы просто наводите курсор на нужный элемент на странице, сканер его «считывает» и запоминает его точный цифровой код. Затем вы можете этот код немного подправить, чтобы он был надежнее, и отдать роботу. Теперь робот, как послушный складской погрузчик, будет по этому коду безошибочно находить нужные элементы на сайте: вводить логины, нажимать кнопки, собирать данные из таблиц.
Типичные сценарии использования Мастера UI для веб-автоматизации:
Сценарий 1: Ежедневный вход в личный кабинет поставщика для закупщика.
- Ситуация: Закупщик каждый день заходит на 5 разных сайтов поставщиков, чтобы проверить наличие товара.
- Проблема: Тратится много времени на рутинный ввод логинов и паролов.
- Решение:
Закупщик создает робота для каждого сайта.
С помощью Мастера UI для веб он «сканирует» поля «Логин» и «Пароль», а также кнопку «Войти» на каждом сайте.
В пути для поля «Логин» он использует его уникальный id (например, //input[@id='username']).
Робот запоминает данные для входа (хранящиеся в безопасной переменной) и автоматически выполняет вход. - Результат: Закупщик запускает пять роботов утром и через минуту получает отчет по остаткам со всех площадок, не открывая браузер вручную.
Сценарий 2: Сбор данных с новостного портала для маркетолога.
- Ситуация: Маркетологу нужно ежедневно собирать заголовки новостей по определенной теме с трех порталов.
- Проблема: Ручной копипаст занимает час, легко ошибиться или пропустить новость.
- Решение:
Маркетолог использует Мастер UI для веб, чтобы «сканировать» заголовки новостей на странице.
Он замечает, что все заголовки имеют общий класс .news-title.
В редакторе XPath он упрощает путь до вида //h3[@class='news-title'], что означает «найди все заголовки h3 с таким классом».
Робот заходит на сайт, находит все элементы по этому пути, извлекает из них текст и сохраняет в единую таблицу Excel. - Результат: За 5 минут работы робот собирает полный дайджест заголовков, который маркетолог использует для анализа.
Сценарий 3: Регистрация заявок с корпоративного портала для секретаря.
- Ситуация: Сотрудники присылают заявки на отпуск в виде сообщений во внутренний чат. Секретарю нужно переносить их в кадровую систему.
- Проблема: Постоянное переключение между чатом и системой, ручной ввод данных.
- Решение:
Секретарь создает робота, который читает структурированные сообщения из чата (например, «ФИО: Иванов; Даты: 01.10-15.10»).
С помощью Мастера UI для веб он «сканирует» все поля формы в кадровой системе: «Сотрудник», «Дата начала», «Дата окончания», кнопку «Создать».
Для поля «Сотрудник», которое является выпадающим списком, он использует XPath, который ищет элемент по тексту: //option[text()='Иванов И.И.'].
Робот берет данные из сообщения чата и последовательно заполняет «отсканированные» поля в системе. - Результат: Секретарь просто запускает робота, который за секунды обрабатывает пачку заявок, исключая ошибки усталости.