new_word2pdf.py 976 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. # -*- coding:utf-8 -*-
  2. import time
  3. from multiprocessing import Process
  4. import pythoncom
  5. import win32com.client
  6. from docx2pdf import convert
  7. def convert_word_to_pdf(input_file):
  8. output_file = input_file.replace('.docx', '.pdf')
  9. word = win32com.client.Dispatch("Word.Application")
  10. word.Visible = False
  11. doc = word.Documents.Open(input_file)
  12. doc.SaveAs(output_file, FileFormat=17)
  13. doc.Close()
  14. word.Quit()
  15. def convert_word_to_pdf2(input_file):
  16. pythoncom.CoInitialize()
  17. convert(input_file)
  18. pythoncom.CoUninitialize()
  19. if __name__ == '__main__':
  20. import os
  21. files = os.listdir(r"C:\Users\86131\Desktop\回收\潘资料")
  22. print(files)
  23. t = time.time()
  24. p_lists = []
  25. for file in files:
  26. p1 = Process(target=convert_word_to_pdf2, args=(r"C:\\Users\\86131\\Desktop\\回收\\潘资料\\" + file,))
  27. p1.start()
  28. p_lists.append(p1)
  29. for p in p_lists:
  30. p.join()
  31. print(time.time() - t)