Python textract ImportError

时间:2017-05-31 22:12:12

标签: python docx text-extraction python-docx

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

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

当我在命令行或空闲时运行它时,我会得到最后几行的回溯:

  

文件:" C:... \ textract \ parsers \ docx_parser.py",第1行in           导入docx2txt       ImportError:没有名为docx2txt的模块

我使用的是从https://pypi.python.org/pypi/textract下载的1.5.0版。我不知道它为什么不包含任何依赖项。我是否必须安装docx2txt及其后续依赖项?为什么textract包不包含我需要的所有内容?

3 个答案:

答案 0 :(得分:0)

我建议使用file = open('scores.txt','r').read().splitlines() exam_one = [] for line in file: line = line.split() # not strip exam_one.append(int(line[2])) # or better use float() since it's an exam print(exam_one) # => [100, 82, 94, 89, 87] 来安装模块。它会将它安装在通常由python查找的路径中。它还应该照顾依赖。

如果您进行了手动安装或仅将其解压缩到晚餐文件夹,请正确设置路径,如此处所述[{3}}或How to add to the pythonpath in windows 7?

如果您认为自己已正确设置,那么请将其发布给它,pwd等。

答案 1 :(得分:0)

textract不会自动为其支持的所有文件类型安装依赖项。您有选择地安装您感兴趣的那些。

虽然这并不像人们想象的那么优雅,但我认为这是合适的设计选择。 Python无法按需安装依赖项,因此唯一的选择是textract安装所有十几个或更多可能的依赖项,这会使Python臃肿环境。

因此,在这种情况下,正如Kashyap所提到的,适当的行动是:

pip install python-docx

,类似于您可能需要的任何其他文件类型依赖项。

答案 2 :(得分:0)

这对我有用,

打开终端,然后按如下所示键入它们,

python -m venv env 
source ./env/bin/activate
sudo apt update
sudo apt install python-pip && pip install --upgrade pip
sudo apt install python-dev libxml2-dev libxslt1-dev antiword unrtf poppler-utils pstotext tesseract-ocr flac ffmpeg lame libmad0 libsox-fmt-mp3 sox libjpeg-dev swig
pip install textract

如果遇到任何错误,请在下面尝试

pip install https://pypi.python.org/packages/ce/c7/ab6cd0d00ddf8dc3b537cfb922f3f049f8018f38c88d71fd164f3acb8416/SpeechRecognition-3.6.3-py2.py3-none-any.whl
sudo apt install libpulse-dev
pip install textract