【发布时间】:2020-10-24 23:19:23
【问题描述】:
我正在构建一个 python 包,我正在使用 Spacy 库和 Spacy 模型 en_core_web_md。它不能使用 pip 安装。可以这样安装
python -m spacy download en_core_web_md
我在 Python 包中放置了 en_core_web_md 文件夹。
-
simple_eda
- init.py
- simple_eda.py
- en_core_web_md
-
测试
-
setup.py
-
README.md
-
许可证
我可以成功安装包,但是当我导入时,它给了我这个错误。
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/shahid/anaconda3/envs/eda_test_6/lib/python3.5/site-packages/simple_nlp/__init__.py", line 1, in <module>
from simple_nlp.simple_nlp import SimpleNLP
File "/home/shahid/anaconda3/envs/eda_test_6/lib/python3.5/site-packages/simple_nlp/simple_nlp.py", line 22, in <module>
nlp = spacy.load("en_core_web_md")
File "/home/shahid/anaconda3/envs/eda_test_6/lib/python3.5/site-packages/spacy/__init__.py", line 30, in load
return util.load_model(name, **overrides)
File "/home/shahid/anaconda3/envs/eda_test_6/lib/python3.5/site-packages/spacy/util.py", line 175, in load_model
raise IOError(Errors.E050.format(name=name))
OSError: [E050] Can't find model 'en_core_web_md'. It doesn't seem to be a shortcut link, a Python package or a valid path to a data directory.
我应该将文件夹放在哪里,还是应该在 setup.py 文件中添加指向该文件夹的链接?
【问题讨论】:
-
你是怎么导入的?试试这个,看看它是否有效? 'Import spacy Nlp= spacy.laod('en_core_web_md')' 我也遇到了与 en_core_web_sm 相同的错误,我使用直接链接和 pip 来解决它,并且它可以使用以下命令:'pip install github.com/explosion/spacy-models/releases/download/…'。此链接中也有 en-core-web-md 所以我认为尝试手动下载并使用 pip 安装它会有所帮助
-
如何打包
en_core_web_md?你的setup.py里有什么? -
@phd 如您所见,我的 simple_nlp 文件夹中有地方 en_core_web_md 文件夹。我像 nlp = spacy.load("en_core_web_md") 一样导入它。 A.mh 这也回答了你的问题。 taha我想在Pypi上发布我的包,所以解决方案不可靠。
-
@taha 请查看我上面的评论
-
@A.mh 你也请。
标签: python pip spacy pypi python-packaging