web-dev-qa-db-ja.com

python3.3でdocxをインポートすると、エラーImportErrorがあります: 'exceptions'という名前のモジュールはありません

docxをインポートすると、次のエラーが発生します。

>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'

このエラーを修正する方法(python3.3docx 0.2.4)?

53
user3472559

python 3xを使用しない場合、pip install docx代わりに行く

pip install python-docx 

python 3xと互換性があります

公式ドキュメント: https://pypi.org/project/python-docx/

100
Arun
  1. pip uninstall docxでdocxモジュールをアンインストールします
  2. python_docx-0.8.6-py2.py3-none-any.whlファイルをhttp://www.lfd.uci.edu/~gohlke/pythonlibs/ からダウンロードします=
  3. pip install python_docx-0.8.6-py2.py3-none-any.whlを実行してdocxを再インストールします。これにより、上記のインポートエラーがスムーズに解決されました。ソリューションを提供するだけです...
14
Vancent

In Python 3例外モジュールが削除され、すべての標準例外が組み込みモジュールに移動されました。したがって、標準例外の明示的なインポートを行う必要はありません。

コピー元

3
sajid

python-docxではなく、docxをインストールする場合があります

インストールpython-docxでこれを確認できます

http://python-docx.readthedocs.io/en/latest/user/install.html#install

2
某某某

問題は、以前のコメントで述べたように、docxモジュールがPython 3.と互換性がなかったということです。githubのこのプルリクエストで修正されました: https:// github .com/mikemaccana/python-docx/pull/67

例外は現在ビルトインされているため、解決策は例外をインポートしないことです。

docx.py
@@ -27,7 +27,12 @@
 except ImportError:
     TAGS = {}

-from exceptions import PendingDeprecationWarning
+# Handle PendingDeprecationWarning causing an ImportError if using Python 3
+try:
+    from exceptions import PendingDeprecationWarning
+except ImportError:
+    pass
+
 from warnings import warn

 import logging
1
Dmitry