Python 批量将 Word 文件(DOCX)转为 PDF 文件 简介
该功能是基于 Python 实现的自动化办公格式转换工具,可批量扫描并处理指定文件夹内的所有 DOCX 格式 Word 文档(支持多段落、图文混排、表格、版式复杂的 DOCX 文件),无需手动逐个打开 Word 并执行 “另存为 PDF” 操作,实现一站式批量转换,大幅提升办公效率与文件标准化处理能力。
核心特性
批量高效处理:自动遍历目标文件夹(支持递归查找子文件夹内的 DOCX 文件),一次性识别所有待转换文档并批量执行转换,彻底替代人工重复操作,节省大量时间成本。
高保真格式还原:转换过程中能最大程度保留原 Word 文档的版式布局、字体样式、图片位置、表格结构、页码格式等细节,转换后的 PDF 文件与原 DOCX 文件视觉效果高度一致,无需二次调整。
灵活兼容与配置:
兼容性强:支持常规 DOCX 文件、大容量图文混排 Word、带页眉页脚 / 水印的 Word 文档转换;
配置灵活:可自定义 PDF 输出路径(默认与原文件同目录 / 指定统一输出文件夹)、是否保留原文件、是否覆盖已存在的同名 PDF,适配不同办公场景需求。
操作简洁易上手:基于成熟 Python 第三方库实现,代码逻辑清晰,无需复杂的专业技术,只需简单配置参数即可运行脚本,支持后续封装为可直接双击运行的程序(非编程人员也可使用)。
# -*- coding: utf-8 -*-
”’
Python批量将Word文件DOCX转为PDF文件
”’# 安装所需模块
# pip install pywin32 -i https://pypi.tuna.tsinghua.edu.cn/simple# 导入包
import os
from win32com.client import Dispatch, constants, gencache
# 定义方法
def doc2pdf(wordFile,pdfFile):
”’DOC转PDF主方法”’
word = gencache.EnsureDispatch(‘Word.Application’)
doc = word.Documents.Open(wordFile,ReadOnly = 1)
doc.ExportAsFixedFormat(pdfFile,
constants.wdExportFormatPDF,
Item=constants.wdExportDocumentWithMarkup,
CreateBookmarks=constants.wdExportCreateHeadingBookmarks)
word.Quit(constants.wdDoNotSaveChanges)
def files_in_folder(docpath, pdfpath):
”’列出所有文件路径,并转换”’
files = os.listdir(docpath)
docfiles = [f for f in files if f.endswith((“.doc”, “.docx”))]
for docfile in docfiles:index = docfile.rindex(‘.’)
pdfFile = docfile[:index] + ‘.pdf’# 如果文件已存 不在重复生成
if(os.path.exists(os.path.join(pdfpath, pdfFile))):
print(‘已存在:’+os.path.join(docpath, docfile), pdfFile)
else:
doc2pdf(os.path.join(docpath, docfile), os.path.join(pdfpath, pdfFile))
print(os.path.join(docpath, docfile), ‘==>’ , pdfFile)
if __name__ == ‘__main__’:
# 存放Wrod文件的docx目录
docpath = r’D:\Test\docx’# 保存转换后PDF的目录
pdfpath = r’D:\Test\pdf’# 开始转换
files_in_folder(docpath, pdfpath)
原创文章,作者:管理员,如若转载,请注明出处:https://www.devcn.cn/54.html