【Python】pip配置国内镜像源,让Python模块安装飞起来。
1、问题
使用pip install命令安装Python模块时,经常会“下载速度慢”甚至“超时”问题,导致模块安装失败。
C:\Users\83894\PycharmProjects\HelloPy\excel>pip install numpy WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ReadTimeoutError("HTTPSConnectionPool(host='pypi.org', port=443): Read timed out. (read timeout=15)")': /simple/numpy/ ERROR: Could not find a version that satisfies the requirement numpy (from versions: none) ERROR: No matching distribution found for numpy
2、原因
类似pip,yum等支持在线安装的工具又或是maven之类的依赖管理工具,一般都会联网从远端的软件仓库(repository)把软件包下载到本地再进行安装。有时候我们需要具体指定从哪个repository中去下载所需的软件安装包。
这得从pip install命令的 --index-url 或者 -i 选项说起。
pip install xxx 默认直接从官方默认的源仓库拉取xxx模块软件进行安装。
pip install xxx -i https://pypi.tuna.tsinghua.edu.cn/simple 从指定的软件仓库拉取软件副本进行安装。
前者从海外官方仓库(https://pypi.org/simple)下载软件,因而慢和不稳定,有时还可能访问都不通;
后者从国内的镜像仓库下载,自然就不必担心超时的问题了。
3、解决方案
为自己的pip工具配置一个国内的软件镜像仓库。
方式一,临时指定(就是每次敲命令时指定)
pip install xxx -i https://pypi.tuna.tsinghua.edu.cn/simple
方式二,永久配置(配置默认的镜像仓库到文件里)
在当前用户目录下,添加一个pip目录,创建pip.ini文件,编辑如下内容即可。
[global] index-url = https://pypi.tuna.tsinghua.edu.cn/simple
这样配置之后,新开一个DOS命令行窗口,输入pip install -h回车,可以找到以下一行,说明配置生效了。然后就可以直接使用pip install xxx来安装软件啦,不需要每次加-i选项。
-i, --index-url <url> Base URL of the Python Package Index (default https://pypi.tuna.tsinghua.edu.cn/simple)
以下是摘抄的镜像源,前二经验证可用,后几个没试:
清华大学开源软件镜像站 https://pypi.tuna.tsinghua.edu.cn/simple/
豆瓣 http://pypi.douban.com/simple/
阿里云 http://mirrors.aliyun.com/pypi/simple/
中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/
华中理工 http://pypi.hustunique.com/
山东理工 http://pypi.sdutlinux.org/
…… :( 我矿啥时也搞一个
4、参考
[1] https://www.cnblogs.com/wqpkita/p/7248525.html
[2] https://blog.csdn.net/assassinsshadow/article/details/80118744?utm_source=blogxgwz0