使用默认pypi源出现连接超时的解决办法
最近博主在做一个项目的时候,直接运行pip install django
命令,出现这种情况:
Retrying (Retry(total=4, connect=None, read=None, redirect=None))
after connection broken
by 'ConnectTimeoutError(<pip._vendor.requests.packages.urllib3.connection.
VerifiedHTTPSConnection object at 0x10b058850>,
'Connection to pypi.python.org timed out. (connect timeout=15)')':
说明你采用了默认的pypi源(国外的pypi源),这个很容易出现这种连接超时的问题,所以应当采用国内的镜像源,一些国内常用的pypi源如下:
阿里云 http://mirrors.aliyun.com/pypi/simple/
中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/
豆瓣(douban) http://pypi.douban.com/simple/
清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/
中国科学技术大学 http://pypi.mirrors.ustc.edu.cn/simple/
在你需要安装的xx后面添加-i + pypi源:
pip install xx -i http://pypi.douban.com/simple/
如果还出现下面的情况:
pypi.douban.com is not a trusted or secure host and is being ignored...
那么命令就变成这样:
pip install xx -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
这样就可以解决,但是这样需要每次在后面添加-i http://pypi.douban.com/simple --trusted-host pypi.douban.com
这么一长串的后缀,那么问题来了,我们可不可以设置修改默认的pypi源呢?答案是肯定的,下面就教你如何配置。
在liunx环境下,在当前的虚拟环境下面新建pip.conf
文件:
~/.pip/pip.conf
在windows环境下,在当前的虚拟环境下面的pip文件夹新建pip.ini
,并配置系统环境变量:
%HOMEPATH%\pip\pip.ini
在上面2个文件夹里面写入这些代码:
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple/ #这个pypi源自己定义[install]
trusted-host=pypi.tuna.tsinghua.edu.cn # 这个也是根据pypi源自己定义
现在使用pip来安装时,就会默认调用该镜像,你不需要再添加那些后缀了。当然如果你想临时修改某个pypi源,(不想用清华镜像,想用豆瓣镜像)这也是可以的,操作方法如下: 在前面添加如下代码:
import os
package = raw_input("Please input the package which you want to install:\n")
command = "pip install %s -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com" % packageos.system(command)
然后就可以进行安装了!怎么样,是不是很简单!
至此我们本篇关于使用默认pypi源出现连接超时的解决办法的介绍就到此为止了,感谢你的赏阅!