2017-07-03 53 views
0

我最近试图安装python 3.x的spaCy模块。安装看起来像运行成功(显示没有错误),但是当我尝试导入spaCy时,或者当我尝试安装spaCy模型时,出现下面的错误。我曾尝试使用pip installconda install安装spaCy,并试图强制重新安装numpy。python - spaCy模块不会导入

Traceback (most recent call last): 
    File "C:\ProgramData\Anaconda3\lib\site-packages\numpy\core\__init__.py", 
line 16, in <module> 
    from . import multiarray 
ImportError: DLL load failed: The specified procedure could not be found. 

During handling of the above exception, another exception occurred: 

Traceback (most recent call last): 
    File "C:\ProgramData\Anaconda3\lib\runpy.py", line 183, in _run_module_as_main 
mod_name, mod_spec, code = _get_module_details(mod_name, _Error) 
    File "C:\ProgramData\Anaconda3\lib\runpy.py", line 142, in _get_module_details 
    return _get_module_details(pkg_main_name, error) 
    File "C:\ProgramData\Anaconda3\lib\runpy.py", line 109, in _get_module_details 
    __import__(pkg_name) 
    File "C:\ProgramData\Anaconda3\lib\site-packages\spacy\__init__.py", line 5, in <module> 
    from .deprecated import resolve_model_name 
    File "C:\ProgramData\Anaconda3\lib\site-packages\spacy\deprecated.py", line 8, in <module> 
    from .cli import download 
    File "C:\ProgramData\Anaconda3\lib\site-packages\spacy\cli\__init__.py", line 5, in <module> 
    from .train import train, train_config 
    File "C:\ProgramData\Anaconda3\lib\site-packages\spacy\cli\train.py", line 8, in <module> 
    from ..scorer import Scorer 
    File "C:\ProgramData\Anaconda3\lib\site-packages\spacy\scorer.py", line 4, in <module> 
    from .gold import tags_to_entities 
    File "spacy/morphology.pxd", line 25, in init spacy.gold (spacy/gold.cpp:23505) 
    cdef class Morphology: 
    File "spacy/vocab.pxd", line 27, in init spacy.morphology (spacy/morphology.cpp:10713) 
    cdef class Vocab: 
    File ".env/lib/python2.7/site-packages/Cython/Includes/numpy/__init__.pxd", line 155, in init spacy.vocab (spacy/vocab 
.cpp:19463) 
    File "C:\ProgramData\Anaconda3\lib\site-packages\numpy\__init__.py", line 142, in <module> 
    from . import add_newdocs 
File "C:\ProgramData\Anaconda3\lib\site-packages\numpy\add_newdocs.py", line 13, in <module> 
    from numpy.lib import add_newdoc 
    File "C:\ProgramData\Anaconda3\lib\site-packages\numpy\lib\__init__.py", line 8, in <module> 
    from .type_check import * 
    File "C:\ProgramData\Anaconda3\lib\site-packages\numpy\lib\type_check.py", line 11, in <module> 
    import numpy.core.numeric as _nx 
    File "C:\ProgramData\Anaconda3\lib\site-packages\numpy\core\__init__.py", line 26, in <module> 
    raise ImportError(msg) 
ImportError: 
Importing the multiarray numpy extension module failed. Most 
likely you are trying to import a failed build of numpy. 
If you're working with a numpy git repo, try `git clean -xdf` (removes all 
files not under version control). Otherwise reinstall numpy. 
+1

可以导入numpy的没有问题?可能不会。如果没有,你怎么安装numpy? – Evert

+0

是的,你是对的,我没有能够导入numpy没有问题。我只尝试通过pip强制重新安装numpy,但我现在只是通过conda运行numpy的安装。它似乎工作,因为我现在可以成功导入numpy和spaCy。谢谢你的帮助! –

+0

Conda可能添加了所需的DLL文件:numpy依赖的外部库。点子不会那么远:它不会安装外部依赖。我认为你原来的conda安装spaCy失败了,因为它只做了numpy的基本检查,而不是对外部依赖的完整检查,并且由于你的numpy安装是通过pip,所以它恰好缺少了这些依赖关系。 – Evert

回答

0

手动删除这些2个文件夹:

rm -rf /usr/local/lib/python2.7/site-packages/numpy/ 
rm -rf /usr/local/lib/python2.7/site-packages/numpy-1.10.4.dist-info/ 

然后尝试安装numpy的

pip install numpy