2013-10-10 99 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)