前言
最近遇到一个问题,打印大量的word,自知word在不同打印店格式可能会发生变化,于是就想去将其转为pdf,在百度上去搜索,无奈搜不到相关程序,于是就使用英语去搜索,“.doc to pdf using python”就在stack overflow上查询到了一个相关案例,实验后,在此分享。
环境准备:程序包:comtypes
其实,这个属于python和COM(客户端编程)
程序代码
import sys
import os
import comtypes.client
def d2p(doc_name,pdf_name):
in_file=doc_name
out_file=pdf_name
# create COM object
word=comtypes.client.CreateObject('Word.Application')
doc=word.Documents.Open(in_file)
doc.SaveAs(out_file,FileFormat=17)
doc.Close()
word.Quit()
file_path="C:/Users/JackPi/Desktop/file/word/"
file_list=os.listdir(file_path)
for word_path in file_list:
doc_name=file_path+word_path
pdf_name=file_path+word_path.split(".")[0]+".pdf"
print(doc_name)
print(pdf_name)
# 判断文档名是不是以C开头
if word_path[0]!="C":
continue
else:
d2p(doc_name,pdf_name)