2016-05-11 1 views
2

Я пытаюсь преобразовать файл DOCX в PDF со следующим кодомImportError: не может импортировать имя COMError в питона

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, я не могу понять, как решить эту проблему.

[Редактировать]

StackTrace

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

вместо 'import comtypes.client' попробовать' import comtypes'. comtypes.client импортирует только пакет клиента. COMError может быть в другом месте – Craicerjack

+0

@Craicerjack все еще получает ту же ошибку –

+0

как вы установили comtypes? – Craicerjack

ответ

1

К сожалению COMTypes предназначен для Windows, не Linux.

comtypes allows to define, call, and implement custom and dispatch-based COM interfaces in pure Python. It works on Windows, 64-bit Windows, and Windows CE.

Source

Вам нужно найти другой способ сделать ваши преобразования, вероятно, через другую библиотеку.