ImportError: cannot import name COMError in python

15,684

Unfortunately COMTypes is designed for Windows, not 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

You'll need to find another way to do your conversion, likely through another library.

Share:
15,684
hard coder
Author by

hard coder

Updated on June 14, 2022

Comments

  • hard coder
    hard coder about 2 years

    I am trying to convert docx file to pdf with following code

    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()
    

    It is throwing an error

    ImportError: cannot import name COMError
    

    I have installed comtypes package.

    I am very new to python, I can not figure out how to resolve this problem.

    [Edit]

    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
    
  • X0-user-0X
    X0-user-0X about 2 years
    And what is the other way??