2013-10-10 132 views
2

我的Excel工作表中包含各種圖像。我想將這些圖像作爲PNG或JPEG文件存儲在磁盤上。任何人都可以建議是否有任何解決方案來實現這一目標將腳本從xlsx文件保存到磁盤的Python腳本

我已經嘗試使用python xlrd模塊,但它忽略了xlsx內的圖像。

+0

如果xlrd無法做到這一點,最好更改您的編程語言。我相當確定在VBA中它非常簡單。 – lucasg

+0

如果您嘗試「導入zipfile」,然後打印'zipfile.ZipFile(「your_filename_here.xlsx」)。namelist()',您能看到圖像文件名嗎? – DSM

回答

3

取消@ DSM的評論,這段代碼的工作原理是從xlsx文件中提取嵌入的jpegjpg文件。它們將在您運行程序的目錄中結束,嵌套在原始存檔內容中顯示的文件夾中:

import zipfile 
XLSname = "/Users/user/myfile.xlsx" 

EmbeddedFiles = zipfile.ZipFile(XLSname).namelist() 
ImageFiles = [F for F in EmbeddedFiles if F.count('.jpg') or F.count('.jpeg') ] 

for Image in ImageFiles: 
    zipfile.ZipFile(XLSname).extract(Image)