Python textract ImportError

问题描述:

我已经开始使用Python库textract解析来自PowerPoint(.pptx),Word文档( .docx)和文本文件(* .txt)的文本。我写了一个简单的脚本来测试它。Python textract ImportError

# Python textract test script 
import textract 
textract.process("H:\My Documents\Test.docx") 

当我运行它,无论是在命令行或在空闲时,我得到一个回溯与最后几行是:

File: "C:...\textract\parsers\docx_parser.py", line 1 in import docx2txt ImportError: No module named docx2txt

我使用的1.5.0版本,从https://pypi.python.org/pypi/textract下载。我不知道为什么它不包含任何依赖关系。我需要安装docx2txt及其后续的依赖关系吗?为什么textract包不包含我需要的所有东西?

+0

您试过下载docx2txt吗? – Quartal

我会推荐使用pip install xxx来安装模块。这将安装在通常由python查看的路径中。它也应该照顾依赖。

如果你没有手动安装或只是把它解压到晚餐文件夹,然后正确设置你的路径,像这里所描述How to add to the pythonpath in windows 7?Python - PYTHONPATH in linux

如果你认为你已经正确设置它,然后再发布它的价值,PWD等。

+0

谢谢。这解决了问题。 – PyNerd

textract不会自动安装它支持的所有文件类型的依赖关系。你有选择地安装你感兴趣的。

尽管这不像人们想象的那样优雅,但在我看来这是合适的设计选择。 Python没有能力按需安装依赖项,所以唯一的选择是textract安装全部十几个或更多可能的依赖关系,这会导致你的Python环境膨胀。

因此,在这种情况下,卡什亚普提到,相应的操作是:

pip install python-docx 

和您可能需要的任何其他文件类型的依赖关系类似。