我正在尝试编写一个脚本来打开用户指定的 ppt,读取它并找到图像文件名。我使用 python pptx 包,因为这让我实际上可以打开 ppt 文件。我试图浏览每张幻灯片并检查该幻灯片的图像,但我不知道如何使用 pptx 包执行此操作,并且该 imo 上的文档并不十分清楚。
因此,在深入研究文档之后,我发现这种工作可以完成:
file = open(fileName, 'rb')
ppt = Presentation(file)
images = []
for slide in ppt.slides:
for shape in slide.shapes:
print(shape.image)
if shape.image:
if isCorrectImageType(shape.image):
print(shape.image.filename)
file.close()
def isCorrectImageType(imageShape):
imgExtension = imageShape.content_type
filePattern = '(.jpg$|.jpeg$|.png$|.gif$)'
image = re.search(filePattern, imgExtension)
print(image.group(0))
return image.group(0)
这有效,但是它不返回正确的文件名。它返回 image.png 而文件名是 myfile.png