Python 批量合并图片到word文档

这段代码是一个用Python编写的功能,它将指定文件夹中的所有图片插入到Word文档中并保存。以下是代码的主要步骤和功能:

导入必要的库

Python中的docx库用于操作Word文档,glob库用于匹配文件路径。

复制代码
from docx import Document
from docx.shared import Inches
import glob

定义函数 insert_images_to_word(image_folder, output_path)

该函数用于将指定文件夹中的所有图片插入到Word文档中,并保存到指定路径。

复制代码
def insert_images_to_word(image_folder, output_path):
    try:
        # 创建一个空白的Word文档对象
        doc = Document()

        # 添加段落
        doc.add_paragraph('这是一个包含多张图片的Word文档')

        # 获取文件夹中的所有图片文件路径
        image_files = glob.glob(image_folder + '/*.png') + glob.glob(image_folder + '/*.jpg')

        # 遍历图片文件路径列表,逐个添加图片到Word文档中
        for image_file in image_files:
            doc.add_picture(image_file, width=Inches(6), height=Inches(3))

        # 保存Word文档
        doc.save(output_path)
        return True
    except Exception as e:
        print(e)
        return False

创建一个空白的Word文档对象

复制代码
doc = Document()

添加一个段落到Word文档中

复制代码
doc.add_paragraph('这是一个包含多张图片的Word文档')

获取文件夹中的所有图片文件路径

使用glob.glob()函数获取文件夹中所有的.png.jpg图片文件路径。

复制代码
image_files = glob.glob(image_folder + '/*.png') + glob.glob(image_folder + '/*.jpg')

遍历图片文件路径列表,逐个将图片添加到Word文档中

利用add_picture()方法将图片逐个添加到Word文档中,可以设置图片的宽度和高度。

复制代码
for image_file in image_files:
    doc.add_picture(image_file, width=Inches(6), height=Inches(3))

保存Word文档到指定路径

使用save()方法保存Word文档到指定的输出路径。

复制代码
doc.save(output_path)

返回生成结果状态

如果成功生成Word文档,则返回True,否则返回False

复制代码
return True

调用函数并输出结果

最后,根据需要指定图片所在文件夹路径和输出文件路径,并调用函数进行操作。根据返回值判断操作是否成功。

复制代码
# 图片所在文件夹路径
image_folder = r'C:\Users\Admin\Desktop\数据核对'

# Word文档保存路径
output_path = r'C:\Users\Admin\Desktop\output.docx'

# 调用函数
if insert_images_to_word(image_folder, output_path):
    print('Word文档已保存到{}'.format(output_path))
else:
    print('生成Word文档失败。')

这样,代码就完成了将指定文件夹中的所有图片插入到Word文档并保存的功能。

完整代码一:

复制代码
from docx import Document
from docx.shared import Inches
import glob


def insert_images_to_word(image_folder, output_path):
    """
    将指定文件夹中的所有图片插入到 Word 文档中,并保存到指定路径。

    image_folder:图片所在文件夹的路径。
    output_path:Word 文档保存路径。
    """
    try:
        # 创建一个空白的Word文档对象
        doc = Document()

        # 添加段落
        doc.add_paragraph('这是一个包含多张图片的Word文档')

        # 获取文件夹中的所有图片文件路径
        image_files = glob.glob(image_folder + '/*.png') + glob.glob(image_folder + '/*.jpg')

        # 遍历图片文件路径列表,逐个添加图片到Word文档中
        for image_file in image_files:
            doc.add_picture(image_file, width=Inches(6), height=Inches(3))

        # 保存Word文档
        doc.save(output_path)
        return True
    except Exception as e:
        print(e)
        return False


# 图片所在文件夹路径
image_folder = r'C:\Users\Admin\Desktop\数据核对'

# Word文档保存路径
output_path = r'C:\Users\Admin\Desktop\output.docx'

# 调用函数
if insert_images_to_word(image_folder, output_path):
    print('Word文档已保存到{}'.format(output_path))
else:
    print('生成Word文档失败。')

完整代码二:

复制代码
from docx import Document
from docx.shared import Inches
import glob

# 创建一个空白的Word文档对象
doc = Document()

# 添加段落
doc.add_paragraph('这是一个包含多张图片的Word文档')

# 图片所在文件夹路径
image_folder = r'C:\Users\liuchunlin2\Desktop\新建文件夹'

# 获取文件夹中的所有图片文件路径
image_files = glob.glob(image_folder + '/*.png')+glob.glob(image_folder + '/*.jpg')  # 根据实际情况修改文件扩展名

print(image_files)

# 遍历图片文件路径列表,逐个添加图片到Word文档中
for image_file in image_files:
    doc.add_picture(image_file, width=Inches(6), height=Inches(3))

# 保存Word文档
doc.save('output.docx')
相关推荐
wj3055853788 小时前
课程 9:模型测试记录与 Prompt 策略
linux·人工智能·python·comfyui
星寂樱易李8 小时前
iperf3 + Python-- 网络带宽、网速、网络稳定性
开发语言·网络·python
qingfeng154159 小时前
企业微信机器人开发:如何实现自动化与智能运营?
人工智能·python·机器人·自动化·企业微信
彦为君12 小时前
Agent 安全:从权限提示到沙箱隔离
python·ai·ai编程
PILIPALAPENG13 小时前
Python 语法速成指南:前端开发者视角(JS 类比版)
前端·人工智能·python
用户83562907805113 小时前
Python 操作 PowerPoint 页眉与页脚指南
后端·python
枫叶林FYL14 小时前
项目九:异步高性能爬虫与数据采集中枢 —— 基于 Crawl<sub>4</sub>AI 与 Playwright 的现代化数据采集平台 项目总览
爬虫·python·深度学习·wpf
猫猫的小茶馆14 小时前
【Python】函数与模块化编程
linux·开发语言·arm开发·驱动开发·python·stm32
Miss_min15 小时前
128K长序列数据生成
开发语言·python·深度学习