Python将Word转换为Pdf格式文件(包含批量转换)

由于本地电脑的offic不能将word转换成pdf格式,于是就用python转换了一下,代码如下所示:

from win32com.client import Dispatch

word = Dispatch('Word.Application')
doc = word.Documents.Open("J:\\新建文件夹 (3)\\调休报告书20200706.doc")
doc.SaveAs("J:\\新建文件夹 (3)\\调休报告书20200706.pdf", FileFormat=17)
doc.Close()
word.Quit()

高级一点的写法:

from win32com.client import Dispatch
from os import walk

wdFormatPDF = 17


def doc2pdf(input_file):
    word = Dispatch('Word.Application')
    doc = word.Documents.Open(input_file)
    doc.SaveAs(input_file.replace(".docx", ".pdf"), FileFormat=wdFormatPDF)
    doc.Close()
    word.Quit()


if __name__ == "__main__":
    doc_files = []
    directory = "C:\\Users\\xkw\\Desktop\\destData"
    for root, dirs, filenames in walk(directory):
        for file in filenames:
            if file.endswith(".doc") or file.endswith(".docx"):
                doc2pdf(str(root + "\\" + file))


 

你可能感兴趣的:(python知识)