Парсинг JSON в BAS
Модуль «JSON» в Browser Automation Studio — читать и изменять JSON через JSONPath, правильный инструмент для ответов API и структурированных данных от HTTP-клиента.
Когда данные приходят как JSON, а не как отрисованная страница — от API, XHR-вызова или HTTP-клиента — правильный инструмент не XPath, а модуль «JSON». Он читает и преобразует JSON через JSONPath, JSON-аналог XPath-запроса.
Для чего он
Модуль «JSON» работает с JSON-данными через выражения JSONPath. Где XPath адресует элементы в HTML, JSONPath адресует значения в JSON-документе — вы пишете путь к нужному полю, и модуль его возвращает. Так вы чисто вытаскиваете структурированные данные из ответов API и HTTP-клиента.
Действия
Чтение.
- Получить значение — вернуть одно значение по JSONPath.
- Получить все значения — вернуть все значения по пути.
- Получить срез — прочитать массив или его часть.
- Количество элементов — сколько элементов в массиве.
Изменение.
- Изменить значение — задать значение по пути.
- Удалить значение — убрать значение.
- Изменить формат — переформатировать JSON.
Валидация.
- Подходит ли под JSONPath — проверить, разрешается ли путь, прежде чем на него полагаться.
Где он в картине
Парсинг JSON — естественный напарник HTTP-клиента. Частый паттерн: отправить запрос к API, получить тело JSON, затем действиями Получить значение и Получить все значения с JSONPath извлечь нужные поля — куда быстрее и чище, чем скрапить отрисованную страницу. Используйте XPath для HTML, JSON для API — и вы покрыли оба пути, которыми структурированные данные доходят до бота.
Вопросы и ответы
Как распарсить ответ API в BAS?
Используйте модуль «JSON». Он читает JSON выражениями JSONPath — получить одно значение, получить все значения, прочитать срез или массив и посчитать элементы — ровно так вы извлекаете поля из ответа API или HTTP-клиента.
Что такое JSONPath в BAS?
JSONPath — это язык запросов, которым модуль «JSON» адресует части JSON-документа, похоже на то, как XPath адресует HTML. Вы пишете путь к нужному значению, и модуль его возвращает.
Ещё по теме
- Browser Automation Studio: полный практический гидГид
- Создаём первого бота в Browser Automation StudioПошаговый разбор создания первого рабочего бота в BAS — от пустого проекта до процесса, который ходит по страницам, извлекает данные и работает в несколько потоков.
- Настройка прокси в Browser Automation StudioКак правильно настроить прокси в BAS — типы прокси, привязка по потокам, ротация и проверки, которые не дают мультиаккаунт-ботам попасть под бан.
- Поиск элементов в BAS: селекторы, которые не ломаютсяКак работает поиск элементов в Browser Automation Studio — CSS против XPath, почему записанные селекторы ломаются и как писать селекторы, переживающие изменения страницы.