windows下spacy安装github包报错
一、报错信息
在windows下使用spacy安装对应的语言模块时,发现其是从github上下载的,使用 python -m spacy download zh_core_web_sm 或 python -m spacy download en时都会报错,报错内容为:requests.exceptions.ConnectionError: HTTPSConnectionPool(host=’raw.githubusercontent.com’, port=443): Max retries exceeded with url: /explosion/spacy-models/master/shortcuts-v2.json (Caused by NewConnectionError(‘: Failed to establish a new connection: [Errno 11004] getaddrinfo failed’)) 。
二、解决方法
这里使用了两步,解决了该问题:
1、SSL库文件复制
这部分参照的 stackoverflow 上提供的思路,将以下两个文件从Anaconda3\Library\bin目录复制一份到Anaconda3\DLLs目录(我使用的miniconda同样适用):
1libcrypto-1_1-x64.*
2libssl-1_1-x64.*
使用上面的方法操作后,发现还是会报错。
2、修改hosts文件
这部分参照的 github 上有人提到的方法,打分 https://www.ipaddress.com/ 站点,查询报错的github域名的对应的IP地址,如raw.githubusercontent.com 对应的IP是199.232.68.133,最终需要将hosts里增加如下内容:
1199.232.68.133 raw.githubusercontent.com
2199.232.68.133 user-images.githubusercontent.com
3199.232.68.133 avatars2.githubusercontent.com
4199.232.68.133 avatars1.githubusercontent.com
以上两部操作完成后,虽然速度下载的有点慢,不过总算可以下载了。
三、其他
除了上面提到的方法,还可以直接通过打开https://github.com/explosion/spacy-models/tags 页面找到对应的模块后,使用pip 直接安装,安装方法如下:
1pip install en_core_web_sm-2.0.0.tar.gz
完装完成后,可能还会遇到这样的错误提示:
1Download successful but linking failed
2Creating a shortcut link for ‘en’ didn’t work (maybe you don’t have admin
3permissions?), but you can still load the model via its full package name: nlp =
4spacy.load(‘en_core_web_sm’)
遇到这个错误后,可以使用mklink命令做软连接或者直接使用快捷方式,其对应的源目录为Lib\site-packages\en_core_web_sm ,需要软链接的目录为Lib\site-packages\spacy\data\en ,当然也可以以管理身份重新打开cmd或pycharm后,再次使用上面的pip命令安装下en_core_web_sm。
捐赠本站(Donate)
如您感觉文章有用,可扫码捐赠本站!(If the article useful, you can scan the QR code to donate))
- Author: shisekong
- Link: https://blog.361way.com/spacy-github-failed/6428.html
- License: This work is under a 知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议. Kindly fulfill the requirements of the aforementioned License when adapting or creating a derivative of this work.