Как конвертировать JSON в CSV

JSON (JavaScript Object Notation) — отличный формат данных, но все его прелести раскрываются, когда работаешь с ним в коде. А вот работать с ним в Экселе совсем неудобно, и тогда нужно конвертировать его в CSV. По запросу «json to csv converter» Гугл выдает кучу различных сервисов, но мне больше всего приглянулся этот.

Добавить JSON в сервис можно одним из трех способов:

  1. Сохранить JSON как файл и указать путь к файлу
  2. Ввести URL с запросом и нажать «Load URL»
  3. Вставить текст JSON

Можно выбрать нужный разделитель для CSV (Output Field Separator).
После того как данные появились в поле для входных данных, нажимаем «Convert JSON to CSV»:

На выходе получаем данные в табличной структуре, разделенные запятой:

Особенность преобразования в том, что сложные объекты JSON’а с многими уровнями вложенности приводятся к простейшему ассоциативному массиву (словарю):

Что потом с этим делать? В первую очередь, открыть CSV в Экселе:

Данные разбиты на 2 строки: в первой строке ключи, во второй — значения. Удобнее будет работать с этими данными если их транспонировать: копируем данные и вставляем на новый лист с транспонированием. Должно получится что-то подобное:

Вот теперь с этим уже можно работать. Например, применить фильтр, который оставит только те пары значение-ключ, у которых ключ содержит «children» и «name»:

Или оставить данные, содержащие «result» и «children», и затем разбить ключи по разделителю «точка» через функцию «Текст по столбцам»:

Естественно, эти методы обработки данных пригодны только для данных из моего примера, но их можно использовать и на других данных, комбинируя формулы и функции Экселя, например, можно искать какой-то маркер в ключе с помощью функции ПОИСК. В принципе, сводится всё к одному: придумать как по ключу получить нужные значения.

JSON из примера можно скачать по ссылке.

Поделиться
Отправить
Запинить
Ваш комментарий
адрес не будет опубликован

ХТМЛ не работает

Ctrl + Enter