Python 更换pip网络源(PyPI镜像)
Python通过pip install
安装模块(库),然而官网的网速一言难尽,安装小模块还好说,大模块各种红字错误,心累。切换到国内Pypi镜像源可以有效解决网速问题。
单次使用
pip install -i 镜像源网址 要安装的模块名
具体举例,清华源:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple
模块名
注意:镜像网址是https不是http
设为默认
下面的命令将镜像源设为默认,以后运行pip install都从镜像源下载
pip config set global.index-url
镜像源网址
具体举例,清华源:
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
阿里源:
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple
这个命令将会自动创建pip.ini文件,Win10系统的位置在:
C:\Users\用户名\AppData\Roaming\pip
venv虚拟环境配置
默认情况下虚拟环境的pip继承系统设置,如果想单独配置venv的pip镜像源,就在venv目录里手动创建pip.ini文件(跟pyvenv.cfg同一目录),建议把上面创建的pip.ini复制到venv目录再修改。
注意:如果在系统pip.ini中设置了多个参数,则在venv中有可能也需要进行同等配置,否则没有设置的参数依然默认继承系统pip.ini
验证pip配置
pip config list
通过这个命令可以查看当前生效的pip配置。如果是venv,先通过scripts目录里的Activate进入虚拟环境,然后执行上面的命令即可查看配置是否生效。注意:venv跟系统pip.ini如果内容一样,默认调用的是venv的pip.ini,但看不出来差别(这么做也没啥意义)。
不同镜像源的网速
我在东北地区的感觉是白天清华源比较快,晚上高峰时段阿里云网速更稳定。另外,华为源的镜像更新速度至少目前还不如清华和阿里。
其它
以前镜像源一般都是未加密的http协议,除了需要设置镜像源网址外,还需要设置trusted-host,否则每次安装都会有一堆提示。目前国内源几乎都升级到https协议了,就没必要设置trusted-host了。
如果有特殊需求,需要使用http协议的镜像源,可以通过下面的命令配置
pip config set install.trusted-host 镜像主机名
比如,下面两条命令是配置阿里http镜像
pip config set global.index-url http://mirrors.aliyun.com/pypi/simple
pip config set install.trusted-host mirrors.aliyun.com