Парсер
Компонент для поиска и извлечения фрагментов из текстовых данных. Позволяет находить нужные элементы в JSON, XML, HTML или обычном тексте с помощью разных методов поиска.
Компонент для поиска и извлечения фрагментов из текстовых данных. Позволяет находить нужные элементы в JSON, XML, HTML или обычном тексте с помощью разных методов поиска.

Когда использовать
Используйте Парсер, когда нужно извлечь конкретные данные из структурированного или неструктурированного текста. Типичные примеры:
Получить значение поля из JSON-ответа API
Извлечь текст из HTML-страницы по CSS-селектору
Найти все ссылки на странице с помощью XPath
Вытащить номер заказа из текста по регулярному выражению
Настройка компонента
Общие свойства
Поле | Описание |
Название | По умолчанию «Парсер». Можно изменить на своё — например, «Извлечь email из ответа» или «Найти цену в HTML» |
Описание | Необязательное поле. Можно добавить комментарий для себя или коллег |
Секция «Найти»

Поле | Описание |
Данные | Строка с текстовыми данными, в которой требуется найти нужный фрагмент. Данные могут быть любого формата (JSON, XML, HTML, текст). Формат: текст в кавычках или выражение |
Метод поиска | Способ поиска вхождений в исходной строке. Доступны четыре метода: |
Поисковая строка | Выражение, описывающее что искать. Формат зависит от выбранного метода. Формат: текст в кавычках или выражение |
Возвращаемое значение | Поле появляется для некоторых методов поиска. Указывает, что именно вернуть из найденного элемента |
Вернуть | Какое из найденных значений вернуть: «Первый элемент», «Последний элемент» или «Все» |
Методы поиска
Метод | Для чего используется | Пример поисковой строки |
JSONPath | Поиск элементов в JSON-объекте или JS-объекте |
|
XPath | Поиск элемента в XML или HTML-документе |
|
jQuery-селектор | Поиск элемента или данных в HTML-документе. Поддерживает все jQuery-селекторы |
|
Regex | Поиск с помощью регулярных выражений |
|
Возвращаемое значение
Поле доступно при выборе метода jQuery-селектор. Указывает, что именно вернуть у найденного элемента:
%20(1)%20(1)%20(1)%20(1)%20(1).png)
Вариант | Что возвращает |
HTML элемента | Внутренний HTML-код элемента |
Текст элемента | Текстовое содержимое элемента |
Значение элемента (val) | Значение элемента (для input-полей) |
Элемент | Сам DOM-элемент |
Атрибут | Значение указанного атрибута |
Поле также доступно для метода Regex — указывает индекс поисковой подстроки (по умолчанию 0), если регулярное выражение содержит несколько групп (заключенных в круглые скобки).
%20(1)%20(1)%20(1)%20(1)%20(1).png)
Секция «Результат»

Поле | Описание |
Сохранить в | Имя переменной, в которую сохраняются найденные данные. В качестве переменной можно указать ключ объекта — тогда найденные данные сохранятся как значение этого ключа |
Пограничные события

Компонент поддерживает 2 типа пограничных событий:
Ошибка — выход из компонента, если произошла какая-либо ошибка
Таймаут — выход из компонента, спустя заданное ограничение по времени
Если компонент завершился с ошибкой, но на нем не было пограничного события, то процесс завершается. Сообщение ошибки возвращается в результатах процесса.
Примеры
JSONPath
Данные:
{ "store": { "book": [ { "author": "Толстой", "title": "Война и мир" }, { "author": "Достоевский", "title": "Преступление и наказание" } ] } }
Поле | Значение |
Метод поиска |
|
Поисковая строка |
|
Вернуть |
|
Результат: ["Толстой", "Достоевский"]
jQuery-селектор
Данные: HTML-страница с элементом <span class="price">1500 ₽</span>
Поле | Значение |
Метод поиска |
|
Поисковая строка |
|
Вернуть |
|
Возвращаемое значение |
|
Результат: "1500 ₽"
Regex
Данные: "Ваш заказ №12345 подтверждён"
Поле | Значение |
Метод поиска |
|
Поисковая строка |
|
Возвращаемое значение |
|
Вернуть |
|
Результат: "12345"