我正在寻找一种方法来解压缩/解压缩python中的.xls文件。通过使用7-Zip打开Excel文件,您可以看到我要提取的目录。
我已经尝试将Excel重命名为“ .zip”,然后将其提取
myExcelFile = zipfile.ZipFile("myExcel.zip")
myExcelFile.extractall()
但是会抛出
zipfile.BadZipFile: File is not a zip file
答案 0 :(得分:1)
.xls文件使用BIFF格式。 .xlsx文件使用Office Open XML,这是一种压缩的XML格式。 BIFF不是压缩格式; zip库无法识别使用该格式的文件。 – shmee
转换为.xlsx的是solution
import win32com.client as win32
fname = "full+path+to+xls_file"
excel = win32.gencache.EnsureDispatch('Excel.Application')
wb = excel.Workbooks.Open(fname)
wb.SaveAs(fname+"x", FileFormat = 51) #FileFormat = 51 is for .xlsx extension
wb.Close() #FileFormat = 56 is for .xls extension
excel.Application.Quit()