Python办公自动化:Word、Excel与PPT批量转PDF实战

竹里
竹里
发布时间:2026-10-14 | 2人浏览过
原创

本文详解利用Python实现Word、Excel及PPT文件批量转换为PDF格式的方法。通过docx2pdf库处理Word文档,利用win32com和comtypes库分别处理Excel和PPT文件。文章提供了完整的代码示例,涵盖从指定文件夹读取文件、执行转换到保存结果的全流程,帮助读者掌握办公自动化的核心技能。

一、Word转PDF

此处使用Python的docx2pdf库执行转换操作,该库的安装命令如下:


pip install docx2pdf

目标:读取指定文件夹下的所有Word文件,执行转换操作,并将结果保存至对应的文件夹中。

这里辰哥新建两个Word文件作为演示,打开其中一个Word文件查看内容。

文件中不仅包含文字,还包含了图片元素。


import os
from docx2pdf import convert
word_path = 'word_path'
word_to_pdf = 'word_to_pdf'
for i,j,name in os.walk(word_path):
    for word_name in name:
         convert(word_path+"/"+word_name, word_to_pdf+"/"+word_name.replace("docx","pdf"))

其中word_path变量用于指定存放Word文件的文件夹路径,word_to_pdf变量用于指定转换后PDF文件的保存路径。

打开生成的第一个PDF文件,内容如下:

可以看到,文字、图片以及排版格式均与原Word文件完全一致。

二、Excel转PDF

此部分需要使用comtypes库,下面直接展示案例。

上文Word转PDF部分已演示如何从文件夹中读取全部文件,此处不再赘述相关步骤。


pip install pywin32

目标:将Excel文件转换为PDF格式。

这里辰哥新建一个Excel文件作为演示。


import os
from win32com.client import DispatchEx
excel_path = "D:/公众号/0626/Python研究者.xls"
pdf_path = "D:/公众号/0626/Python研究者.pdf"

xlApp = DispatchEx("Excel.Application")
xlApp.Visible = False
xlApp.DisplayAlerts = 0
books = xlApp.Workbooks.Open(excel_path,False)
books.ExportAsFixedFormat(0, pdf_path)
books.Close(False)
xlApp.Quit()

运行代码后生成PDF文件。

打开生成的PDF文件。

可以看到,Excel中的数据已全部转换为PDF格式。

三、PPT转PDF

此部分需要使用comtypes库,下面直接展示案例。

上文Word转PDF部分已演示如何从文件夹中读取全部文件,此处不再赘述相关步骤。

目标:将PPT文件转换为PDF格式。

这是辰哥之前做分享时制作的一个PPT,我们以此为例。


import comtypes.client
import os
def ppt_to_pdf():
    #设置路径
    input_file_path=os.path.abspath("Python学习规划路线.pptx")
    output_file_path=os.path.abspath("Python学习规划路线.pdf")
    #创建PDF
    powerpoint=comtypes.client.CreateObject("Powerpoint.Application")
    powerpoint.Visible=1
    slides=powerpoint.Presentations.Open(input_file_path)
    #保存PDF
    slides.SaveAs(output_file_path,32)
    slides.Close()

这里将PPT文件Python学习规划路线.pptx转换为Python学习规划路线.pdf。

打开生成的PDF文件,其内容如下:

四、小结

本文基本成功实现了目标要求,从效果来看表现非常不错!完整源码可由文中代码组合而成(已全部分享在文中),感兴趣的读者可以自己尝试。

到此这篇关于教你如何用Python自动将任意文件转为PDF格式的文章就介绍到这了,更多相关Python文件转为PDF内容请搜索本站以前的文章或继续浏览下面的相关文章,希望大家以后多多支持本站!

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表