python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python word图片导出

使用Python将word中的图片进行导出功能

作者:cheese-liang

这篇文章主要为大家详细介绍了如何使用Python将word中的图片进行导出功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下

模块准备

首先安装spire.doc这个库,win+R,键入cmd,输入此代码,待安装完成

pip install spire.doc

将要导出的word

word中有如下图片,我要将其进行导出,

代码准备

import queue
from spire.doc import *
from spire.doc.common import *
import os
 
# 指定输入文件路径
input_file = "D:/400-File/000-Project/000-Pycharm/005-MicrosoftWord/000-Extract-photo from word/photo.docx"
# 指定输出目录路径
output_path = "D:/400-File/000-Project/000-Pycharm/005-MicrosoftWord/000-Extract-photo from word/photo"
 
 
 
# 如果输出目录不存在,则创建
os.makedirs(output_path, exist_ok=True)
 
# 创建一个Document实例
document = Document()
# 加载输入的Word文档
document.LoadFromFile(input_file)
 
# 创建一个列表来存储提取的图片数据
images = []
 
# 初始化一个队列来存储待遍历的文档元素
nodes = queue.Queue()
nodes.put(document)
 
# 遍历文档元素
while not nodes.empty():
    node = nodes.get()
    for i in range(node.ChildObjects.Count):
        obj = node.ChildObjects[i]
        # 查找图片
        if isinstance(obj, DocPicture):
            picture = obj
            # 将图片数据添加到列表中
            data_bytes = picture.ImageBytes
            images.append(data_bytes)
        elif isinstance(obj, ICompositeObject):
            nodes.put(obj)
 
# 将图片数据保存为图像文件
for i, image_data in enumerate(images):
    file_name = f"Image-{i}.png"
    with open(os.path.join(output_path, file_name), 'wb') as image_file:
        image_file.write(image_data)
 
document.Close()

这里是可供执行的代码文件 

可供修改的位置

需要修改的位置只有这两处 ,注意复制的路径可能是这样的

"D:\400-File\000-Project\000-Pycharm\005-MicrosoftWord\000-Extract-photo from word\photo.docx"

要将其改写为这样。”\“替换为”/“

"D:/400-File/000-Project/000-Pycharm/005-MicrosoftWord/000-Extract-photo from word/photo.docx"

运行结果

到此这篇关于使用Python将word中的图片进行导出功能的文章就介绍到这了,更多相关Python word图片导出内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文