我正在尝试使用以下代码将docx文件转换为pdf
import sys
import os
import comtypes.client
wdFormatPDF = 17
in_file = os.path.abspath(sys.argv[1])
out_file = os.path.abspath(sys.argv[2])
word = comtypes.client.CreateObject('Word.Application')
doc = word.Documents.Open(in_file)
doc.SaveAs(out_file, FileFormat=wdFormatPDF)
doc.Close()
word.Quit()
抛出错误
ImportError: cannot import name COMError
我已经安装了comtypes包。
我是python的新手,我无法弄清楚如何解决这个问题。
[编辑]
堆栈跟踪
Traceback (most recent call last):
File "converttopdf.py", line 3, in <module>
import comtypes.client
File "/usr/local/lib/python2.7/dist-packages/comtypes-1.1.2-py2.7.egg/comtypes/__init__.py", line 23, in <module>
from _ctypes import COMError
ImportError: cannot import name COMError
答案 0 :(得分:6)
不幸的是,COMTypes是专为Windows设计的,而不是Linux。
comtypes允许在纯Python中定义,调用和实现基于自定义和调度的COM接口。它适用于Windows,64位Windows和Windows CE。
您可能需要找到另一种方式进行转换,可能是通过其他库。