Python脚本—2.把多个word文档中的内容合并到一个word文件
·
任务背景:收集到了42个word文档,每一个文档中是一个表格,包含插入的电子签名,需要把这42个文件合并到一个word文档中,并且每一个word文件合并到新文件中要另起一页。
代码如下:需要修改第48行INPUT_FOLDER,改为自己的文件夹路径,该文件夹中存放所有需要合并的word文件。
'''
Autor: Yeah LWY
Date: 2026-06-22 14:27:48
Description:
LastEditors: Please set LastEditors
LastEditTime: 2026-07-10 11:57:29
'''
import os
import glob
from docx import Document
from docxcompose.composer import Composer
"""_summary_
把多个word文档(指导教师工作总结)合并成一个
"""
def merge_word_documents_composer(input_folder,
output_filename="merged_document.docx"):
"""
使用 docxcompose 库合并文档,完美支持图片、样式等。
"""
docx_files = sorted(glob.glob(os.path.join(input_folder, "*.docx")))
if not docx_files:
print(f"在文件夹 '{input_folder}' 中未找到任何 .docx 文件。")
return
# 初始化第一个文档作为基础
master_doc = Document(docx_files[0])
composer = Composer(master_doc)
for doc_path in docx_files[1:]:
print(f"正在合并: {os.path.basename(doc_path)}")
doc = Document(doc_path)
# 在追加前插入分页符
# 注意:docxcompose 的 append 不会自动加分页符,我们需要手动加
master_doc.add_page_break()
# 追加文档
composer.append(doc)
composer.save(output_filename)
print(f"合并完成!文件已保存为: {output_filename}")
if __name__ == "__main__":
INPUT_FOLDER = "C:/Users/liuwenying/Downloads/附件9"
if not os.path.exists(INPUT_FOLDER):
print(f"错误: 文件夹 '{INPUT_FOLDER}' 不存在。")
else:
# 尝试使用 docxcompose 方法
try:
merge_word_documents_composer(INPUT_FOLDER, "最终合并结果.docx")
except ImportError:
print("未安装 docxcompose 库。正在回退到手动修复方法...")
# 如果没安装,则执行下面的手动修复代码
The above code was generated by QODER CN.

更多推荐



所有评论(0)