Преобразование Excel в JSON в Python
Есть много методов конвертировать файл Excel в данные JSON в Python. В этом руководстве мы разглядим два модуля python для преобразования файлов Excel в JSON:
- excel2json-3;
- Pandas.
Преобразование файла Excel в файлы JSON с внедрением модуля excel2json-3
Это весьма обычной модуль для преобразования файлов Excel в файлы JSON. Содержимое таблицы Excel преобразуется в строчку JSON и сохраняется в файле.
Имя файлов происходит от имен листов Excel. Итак, если есть два листа с именами «Numbers» и «Cars», файлы JSON будут называться Numbers.json и Cars.json соответственно.
Модуль поддерживает преобразование файлов в форматах .xls и .xlsx. Мы можем прочесть файл Excel из файловой системы, также URL-адрес.
Мы можем установить этот модуль при помощи команды PIP.
В нашем примере я сделал файл Excel с именованием «records.xlsx», имеющий три листа.
Вот сценарий для преобразования этого файла Excel в файлы JSON.
Скрипт делает три файла JSON.
Если для вас необходимо прочесть файл Excel по URL-адресу, используйте функцию convert_from_url().
Ограничения модуля excel2json-3
- Плагин имеет весьма ограниченные способности.
- Нет способности пропустить какой-нибудь лист, строчки либо столбцы. Это затрудняет внедрение файлов Excel большего размера.
- JSON сохраняется в файлы. Почти всегда мы желаем конвертировать в JSON и употреблять его в нашей программке, а не сохранять в виде файла.
- Целые числа преобразуются в числа с плавающей запятой.
Преобразование листа Excel в строчку JSON при помощи модуля Pandas
Модуль Pandas предоставляет функции для чтения таблиц Excel в объект DataFrame. Есть много опций для указания заголовков, чтения определенных столбцов, пропуска строк и т.д.
Мы можем употреблять функцию to_json() для преобразования объекта DataFrame в строчку JSON. Давайте поглядим на обычной пример, чтоб прочесть лист «Сотрудники» и конвертировать его в строчку JSON.
Итак, данные JSON создаются с ориентацией столбцов. Если вы желаете сделать строчку JSON с построчной ориентацией, передайте значение параметра «orient» как «records».
Заключение
Если у вас есть обычной и отлично структурированный файл Excel, и вы желаете конвертировать его в файлы JSON, используйте модуль excel2json-3. Но если для вас нужен больший контроль над тем, как данные Excel читаются и конвертируются в строчку JSON, используйте модуль pandas.