python安装包出现Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None))问题解决

  • Post category:http

当你在使用pip安装python包的时候,有时候会出现类似于“Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None))”这样的提示信息,这个问题通常是由于网络问题导致的,下面我会给出解决问题的完整攻略。

问题描述

当你在使用pip安装python包的时候,出现如下类似的提示信息:

Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('
<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7f345d7dd100>: Failed to establish a new connection: [Errno -3] 连接被拒绝')': /simple/packagename/

或者

Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate in certificate chain (_ssl.c:1124)'))': /simple/packagename/

解决方法

方法一:修改pip源

  1. 首先,我们可以尝试修改pip的源,使用国内的pip源。常用的国内pip源有阿里云、清华、豆瓣等,这里以阿里云为例,修改方法如下:
pip install packagename -i https://mirrors.aliyun.com/pypi/simple/
  1. 如果你想永久修改pip源,请修改pip的配置文件,方法如下:

在用户目录(通常是C:\Users\你的用户名)下创建一个pip目录,再在pip目录下创建一个pip.ini文件,文件的内容如下:

[global]
index-url = https://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host = mirrors.aliyun.com

方法二:升级pip版本

有时候,你的pip版本太低也会导致这个问题,因此我们可以尝试升级pip版本,方法如下:

pip install --upgrade pip

示例1

在终端输入以下命令:

pip install streamlit -i https://pypi.tuna.tsinghua.edu.cn/simple/

这里我们使用了清华源,如果您想使用其他源,也可以进行相应的修改。

示例2

在终端输入以下命令:

pip install matplotlib --upgrade

这里我们升级了matplotlib包,如果您想升级其他包,将“matplotlib”替换为您想要升级的包的名称即可。

总结

通过修改pip源或者升级pip版本,我们可以有效地解决上述问题。另外,对于不同的操作系统和环境,有可能需要采取不同的解决方法,因此建议在解决问题的时候,参考多种资料,了解更多的解决方法。