Библиотека xlrd не работает с файлами xlsx. Есть ли способ преобразовать xlsx в xls с помощью python?

Я хочу преобразовать файл xlsx в формат xls с помощью python. Причина в том, что я использую библиотеку xlrd для анализа файлов xls, но xlrd не может анализировать файлы xlsx. На данном этапе переход на другую библиотеку для меня нецелесообразен, так как весь проект использует xlrd, поэтому потребуется много изменений. Итак, есть ли способ программно преобразовать файл xlsx в xls с помощью python?

Пожалуйста, помогите Спасибо


person Kris    schedule 16.11.2011    source источник
comment
xlrd (начиная с 0.8.0) напрямую читает .xlsx файлов. Связано: stackoverflow.com/questions/4371163/   -  person John Y    schedule 05.03.2013


Ответы (2)


Если вы используете Python в Windows и у вас установлен Excel, вы можете использовать расширения Python для Windows. сделать это. Вот пример кода Python, который сделал эту работу за меня:

import win32com.client

xl = win32com.client.Dispatch("Excel.Application")
xl.DisplayAlerts = False
wb = xl.Workbooks.Open(r"C:\PATH\TO\SOURCE_FILENAME.XLSX")
wb.SaveAs(r"C:\PATH\TO\DESTINATION_FILENAME.XLS", FileFormat = 56)
wb.Close()
xl.Quit()

Я протестировал это, используя Python 2.7.2 с pywin32 build 216 и Excel 2007 в Windows 7.

person srgerg    schedule 16.11.2011

xlrd-0.9.2.tar.gz (md5) может извлекать данные из электронных таблиц Excel (.xls и .xlsx, начиная с версии 2.0) на любой платформе.

person user3348010    schedule 24.02.2014