Как преобразовать JSON в CSV в Python
Кредит изображения: oatawa / iStock / GettyImages
Вы можете конвертировать JSON в CSV на языке программирования Python с использованием встроенных библиотек, поставляемых с языком. Вы можете выполнить цикл по объекту JSON и вывести его ключи и значения в виде строк в файле значений, разделенных запятыми. Имейте в виду, что не все файлы JSON можно легко представить как отдельные файлы CSV, поэтому, в зависимости от формата, вам может потребоваться использовать несколько файлов CSV для удобного представления всех данных.
Понимание JSON и CSV
Файлы JSON и CSV - это два распространенных способа представления цифровых данных. JSON означает Обозначение объекта JavaScript, и это способ представления данных в виде вложенных сопоставлений ключей со значениями, а также списков данных. Он вдохновлен тем, как данные представлены в языке программирования JavaScript, но многие современные языки программирования, включая Python, имеют инструменты для обработки данных JSON.
Видео дня
А значение, разделенное запятыми файл - это еще один способ представления структурированных данных. Эти файлы часто используются с электронными таблицами и аналогичными типами программ, поэтому, если вы хотите импортировать JSON в Excel может быть полезно сначала преобразовать его в файл CSV. Как правило, файлы CSV включают заголовки столбцов в верхней части файла, указывающие, что хранится в каждом столбце. Затем каждая строка в файле состоит из нескольких значений, по одному для каждого столбца, разделенных запятыми. Есть особые правила работы с данными, содержащими запятые.
Как и в случае с файлами JSON, на многих языках программирования, включая Python, есть множество инструментов для создания и чтения файлов CSV.
Конвертировать JSON в CSV
Вы можете конвертировать JSON в CSV, используя встроенные библиотеки JSON и CSV в Python. Импортируйте их в свой код, добавив строки «import json» и «import csv» в верхней части кода.
Затем используйте "нагрузка"метод импорта данных из файла JSON. Он будет загружен как словарь Python. Используйте словарь "ключи"метод определения полей данных в файле JSON, которые станут столбцами в вашем файле CSV.
Используйте файл библиотеки CSV "DictWriter " для создания CSV-файла с этими столбцами, указав их с помощью DictWriter "имена полей " аргумент. Используйте его "пишущие заголовки"метод вывода имен столбцов в верхней части CSV.
Затем выполните цикл по объекту JSON с помощью для цикла. Вызов метод «writerow» объекта CSV для каждого элемента данных в файле JSON, чтобы создать соответствующую строку в файле CSV.
Сложные файлы JSON
Некоторые сложные файлы JSON сложнее представить в виде CSV. Это могут быть файлы, которые не сразу соответствуют стандартной структуре строк и столбцов. Если вы имеете дело с таким файлом и хотите преобразовать его в CSV, у вас есть несколько вариантов.
Во-первых, вы можете найти общий набор полей данных, которые встречаются в файле JSON, и сделать их столбцами вашего CSV. Оставьте столбец пустым в определенной строке, если он там не отображается. Воспользуйтесь опцией "extrasaction = 'игнорировать'" в настройке Python CSV DictWriter для автоматического выполнения этого для полей, которые не встречаются в конкретном фрагменте данных.
Вы также можете рассмотреть возможность представления файла JSON в виде нескольких CSV-файлов, по одному для каждого типа данных, представленных в нем. Использовать Python если операторы, чтобы определить, в какой CSV-файл следует записать конкретный фрагмент данных.
Этот метод также может быть полезен для вложенных файлов JSON, в которых объекты JSON содержат другие объекты. Эти подобъекты можно поместить в отдельный файл CSV с указанием, какой строке в основном CSV они соответствуют.