#python #json #xls
#python #json #xls
Вопрос:
Я пытаюсь использовать excel2json для преобразования файла .xls в JSON. Файл Excel содержит 3 столбца:
Column 1 Column 2 Column 3
1 BOB 1/1/2020
2 SALLY 1/4/2020
Я использовал:
import excel2json
excel2json.convert_from_file('test.xls')
Он хорошо работает для всех, кроме столбца даты. Даты, указанные в файле JSON, являются случайными числами, например: 43831.0
Откуда это берется? Как я могу сохранить дату в том же формате в JSON?
Комментарии:
1. Проблема решена? Это так, пожалуйста, отметьте ответ как принятый, чтобы закрыть его.
Ответ №1:
Они не являются случайными, вам необходимо дополнительно обработать порядковое представление даты внутри Excel в datetime
объекты, а затем вернуться к их строковым представлениям:
from datetime import datetime
excel_date = 43831
dt = datetime.fromordinal(datetime(1900, 1, 1).toordinal() excel_date - 2)
dt_string = dt.strftime("%d/%m/%Y")
Вы можете создать функцию, которая в основном преобразуется excel_date
в строковое представление, используя приведенную выше логику, и сопоставить ее со списком ваших порядковых представлений дат в вашем JSON.