以下是使用 Python 实现多线程批量将 doc 文档转换为 PDF 格式的示例代码:
import os
import threading
import win32com.client
from time import sleepclass DocToPdfThread(threading.Thread):
def __init__(self, doc_file, output_dir):
threading.Thread.__init__(self)
self.doc_file = doc_file
self.output_dir = output_dir def run(self):
doc_file_path = os.path.join(self.output_dir, self.doc_file)
pdf_file_path = os.path.join(self.output_dir, os.path.splitext(self.doc_file)[0] + ".pdf")
self.convert_doc_to_pdf(doc_file_path, pdf_file_path) def convert_doc_to_pdf(self, doc_file_path, pdf_file_path):
try:
# 使用 Microsoft Word 进行转换
word = win32com.client.Dispatch("Word.Application")
doc = word.Documents.Open(doc_file_path)
doc.SaveAs(pdf_file_path, FileFormat=17) # 17 表示 PDF 格式
doc.Close()
word.Quit()