利用Python 合并多个Docx 文档中的内容
本文最后更新于 2023-10-19,文章内容可能已经过时。
要使用命令行(cmd)将多个.docx文件的内容合并,可以使用Python脚本并调用`python-docx`库。首先,确保你已经安装了Python和`python-docx`库。如果没有安装,可以通过以下步骤安装:
1. 安装Python: 如果你还没有安装Python,请从[Python官网](https://www.python.org/downloads/)下载并安装最新版本的Python。
2. 安装python-docx库: 打开命令行(cmd)并运行以下命令来安装`python-docx`库:
pip install python-docx
一旦你安装好了Python和`python-docx`库,可以使用以下Python脚本将多个.docx文件的内容合并:新建merge.py 将脚本内容粘贴进去
import os
from docx import Document
def merge_docx_files(input_folder, output_file):
merged_document = Document()
# 遍历输入文件夹中的所有.docx文件
for filename in os.listdir(input_folder):
if filename.endswith(".docx"):
file_path = os.path.join(input_folder, filename)
doc = Document(file_path)
# 将当前文档的内容追加到合并文档中
for element in doc.element.body:
merged_document.element.body.append(element)
# 保存合并后的文档
merged_document.save(output_file)
print("文档合并完成!")
# 输入文件夹路径和输出文件名
input_folder = "输入文件夹的路径"
output_file = "输出文件的路径"
# 调用合并函数
merge_docx_files(input_folder, output_file)`
然后在调用从cmd 进入脚本所在的文件夹,然后键入
python /merge.py
把文件按顺序追加的文档中的代码
import os
from docx import Document
def merge_docx_files(input_folder, output_file):
merged_document = Document()
# 获取输入文件夹中的所有.docx文件并按文件名顺序排序
docx_files = [filename for filename in os.listdir(input_folder) if filename.endswith(".docx")]
docx_files.sort(key=lambda x: int(x.split('.')[0])) # 按文件名的数字部分排序
# 遍历排好序的.docx文件列表
for filename in docx_files:
file_path = os.path.join(input_folder, filename)
doc = Document(file_path)
# 将当前文档的内容追加到合并文档中
for element in doc.element.body:
merged_document.element.body.append(element)
# 保存合并后的文档
merged_document.save(output_file)
print("文档合并完成!")
# 输入文件夹路径和输出文件名
input_folder = "输入文件夹的路径"
output_file = "输出文件的路径"
# 调用合并函数
merge_docx_files(input_folder, output_file)
注意事项
当前的代码只适用于docx文件类型,并不是文件名后缀为docx,使用时请仔细查阅
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 程序员小航
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果