When import docx in python3.3 I have error ImportError: No module named 'exceptions'

when I import docx I have this error:

  File "/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/site-packages/docx-0.2.4-py3.3.egg/docx.py", line 30, in <module>
    from exceptions import PendingDeprecationWarning
ImportError: No module named 'exceptions'

How to fix this error (python3.3, docx 0.2.4)?


Solution 1:

If you are using python 3x don't do pip install docx instead go for

pip install python-docx 

It is compatible with python 3.x

Official Documentation available here: https://pypi.org/project/python-docx/

Solution 2:

When want to use import docx, be sure to install python-docx, not docx.You can install the module by running pip install python-docx.

The installation name docx is for a different module However,

when you are going to import the python-docx module, you’ll need to run import docx, not import python-docx.

if still you want to use docx module then:

First of all, you will need to make sure that the docx module is installed. If not then simply run pip install docx. If it shows '*requirement already satisfied*' then the solution is :

  1. Go to the library to find docx.py file, you'll need to go to directory where you installed python then \Lib\site-packages\ and find docx.py file
  2. Open docx.py file in text editor and find this code

    from exceptions import PendingDeprecationWarning
    
  3. Replace the above code with
try:
    from exceptions import PendingDeprecationWarning
except ImportError:
    pass
  1. Save the file
  2. Now you can run import docx module in Python 3.x without any problem

Solution 3:

  1. Uninstall docx module with pip uninstall docx
  2. Download python_docx-0.8.6-py2.py3-none-any.whl file from http://www.lfd.uci.edu/~gohlke/pythonlibs/
  3. Run pip install python_docx-0.8.6-py2.py3-none-any.whl to reinstall docx.

This solved the above import error smoothly for me.