python批量将word、ppt转化为pdf(极简版)

日将将PPT和word批量转成pdf的需求还是比较普遍的。下列两段代码中,word转pdf的有时候会出现莫名奇妙的报错,跑了两次由于顺利将工作完成了,也没继续研究原因,有需要的使用时得注意下。ppt转pdf时有个缺点是会有ppt的弹窗出来,所以最好是闲置的时候使用。两段代码比较简约了,保留了核心功能,大规模实践可能会有bug,但是简单日常转化个几十个文件,是没问题的。

一、批量将word转化成pdf

使用到的模块:docx2pdf

将某个目录下的全部word转化成pdf

from docx2pdf import convert
import os

director = rC:UsersJamesDesktop合同目录 
FileList = map(lambda x:director+ \+x, os.listdir(director))
for file in FileList:
    convert(file,f"{file.split(.)[0]}.pdf")

二、批量将ppt转化成pdf

使用到的模块:comtypes

将某个目录下的PPT全部转化成pdf

import comtypes.client
import os

director = rC:UsersJamesDesktop全部PPT 
FileList = map(lambda x:director+ \+x, os.listdir(director))

for file in FileList:
    powerpoint = comtypes.client.CreateObject("Powerpoint.Application")
    powerpoint.Visible = 1
    slides = powerpoint.Presentations.Open(file)
    #保存PDF
    slides.SaveAs(f"{file.split(.)[0]}.pdf", 32)
    slides.Close()
    print("完成"+f"{file.split(.)[0]}.pdf")
经验分享 程序员 微信小程序 职场和发展