解决ERROR: Could not install packages due to an EnvironmentError: HTTPSConnectionPool(host=‘x’,port=x)
背景
在使用之前的代码时,报错:
ERROR: Could not install packages due to an EnvironmentError:
HTTPSConnectionPool(host=‘files.pythonhosted.org’, port=443): Max retries exceeded with url: /packages/70/ca/20aee170afe6011e295e34b27ad7d7ccd795faba581dd3c6f7cec237f561/pyglet-1.5.0-py2.py3-none-any.whl
(Caused by NewConnectionError(‘<pip._vendor.urllib3.connection.VerifiedHTTPSConnection object at 0x7f776824ed30>:
Failed to establish a new connection: [Errno -3] Temporary failure in name resolution’))
报错问题
ERROR: Could not install packages due to an EnvironmentError:
HTTPSConnectionPool(host='files.pythonhosted.org', port=443): Max retries exceeded with url: /packages/70/ca/20aee170afe6011e295e34b27ad7d7ccd795faba581dd3c6f7cec237f561/pyglet-1.5.0-py2.py3-none-any.whl
(Caused by NewConnectionError('<pip._vendor.urllib3.connection.VerifiedHTTPSConnection object at 0x7f776824ed30>:
Failed to establish a new connection: [Errno -3] Temporary failure in name resolution'))
截图如下:
报错翻译
主要报错信息内容翻译如下所示:
ERROR: Could not install packages due to an EnvironmentError:
HTTPSConnectionPool(host='files.pythonhosted.org', port=443): Max retries exceeded with url: /packages/70/ca/20aee170afe6011e295e34b27ad7d7ccd795faba581dd3c6f7cec237f561/pyglet-1.5.0-py2.py3-none-any.whl
(Caused by NewConnectionError('<pip._vendor.urllib3.connection.VerifiedHTTPSConnection object at 0x7f776824ed30>:
Failed to establish a new connection: [Errno -3] Temporary failure in name resolution'))
翻译:
错误:由于 EnvironmentError,无法安装软件包:
HTTPSConnectionPool(host='files.pythonhosted.org', port=443):超出最大重试次数,网址为:/packages/70/ca/20aee170afe6011e295e34b27ad7d7ccd795faba581dd3c6f7cec237f561/pyglet-1.5.0-py2.py3-none-any.whl
(由0x7f776824ed30>处的 NewConnectionError('<pip._vendor.urllib3.connection.VerifiedHTTPSConnection 对象引起):
无法建立新连接:[Errno -3] 名称解析暂时失败'))
报错原因
经过查阅资料,发现是在安装codecs,theano等模块时,经常出现这个问题。主要原因是网络连通性不好,网络连接不稳定(网络问题)。所以需要自己设定或者更换安装源。
小伙伴们按下面的解决方法即可解决!!!
解决方法
要解决这个错误,有如下几种方法:
方法一:更换下载源
修改默认的pip安装源请参考:修改默认的pip安装源(修改默认的PyPI安装源)
临时使用常用的国内源下载,例如:
清华源:
pip install xxxx -i https://pypi.tuna.tsinghua.edu.cn/simple
豆瓣源:
pip install xxxx -i https://pypi.douban.com/simple
附,国内各大源列表:
名称 | 地址 |
---|---|
阿里 | https://mirrors.aliyun.com/pypi/simple |
豆瓣 | http://pypi.douban.com/simple/ |
清华大学 | https://pypi.tuna.tsinghua.edu.cn/simple |
中国科学技术大学 | https://pypi.mirrors.ustc.edu.cn/simple |
华中理工大学 | http://pypi.hustunique.com/simple |
山东理工大学 | http://pypi.sdutlinux.org/simple |
网易 | https://mirrors.163.com/pypi/simple/ |
腾讯 | https://mirrors.cloud.tencent.com/pypi/simple |
方法二:设置超时时间
使用超时时间设置,例如:
pip --default-timeout=500 install xxxx
pip --default-timeout=500 install -U pip xxxx
注意,等号后面的超时时间值可以调整。
方法三:换源+设置超时
同时更换国内源 + 设置超时时间,(就是有时仍慢了点,但仍有可能传输中断):
pip --default-timeout=500 install xxxx -i https://pypi.tuna.tsinghua.edu.cn/simple
或者
pip --default-timeout=500 install xxxx -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
注意:如果还是超时了,可以设置更大的超时时间数
方法四:检查或更换网络环境
检查下是否开启代理或者VPN,将其关闭再使用国内镜像进行尝试看看是否可以解决,我这边有过代理开启导致网络太慢而报错的。
或者干脆换一个网络条件更好的网络环境。
方法五:离线安装
当网络条件太差并且没有别的选择时,而上述方法都行不通,就只能手动下载离线安装包,进行离线安装了。以catboost为例。
安装命令如下:
pip install catboost-0.24.2-cp36-none-win_amd64.whl文章来源:https://www.toymoban.com/news/detail-785844.html
今天的分享就到此结束了
文章来源地址https://www.toymoban.com/news/detail-785844.html
到了这里,关于解决ERROR: Could not install packages due to an EnvironmentError: HTTPSConnectionPool(host=‘x’,port=x)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!