飘云飘云

漂泊的云,停留的心!人的头脑太复杂,时间过得久,有时候连自己也被自己骗了,记下来才是最真实的……

python pip源-PyPI使用国内源加速更新升级的设置方法


国内源:

清华大学:https://pypi.tuna.tsinghua.edu.cn/simple
阿里云:https://mirrors.aliyun.com/pypi/simple
华中理工大学:http://pypi.hustunique.com/
山东理工大学:http://pypi.sdutlinux.org/
豆瓣(douban):http://pypi.douban.com/simple

使用方法

临时使用:

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

注意,simple 不能少, 是 https 而不是 http

设为默认:

升级 pip 到最新的版本 (>=10.0.0) 后进行配置:

pip install pip -U
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple
pip install pip -U
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
pip3 install pip -U
pip3 config set global.index-url https://mirrors.aliyun.com/pypi/simple
pip3 install pip -U
pip3 config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

如果您到 pip 默认源的网络连接较差,临时使用本镜像站来升级 pip:

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

修改源方法

永久修改:

Linux: 修改 ~/.pip/pip.conf (没有就创建一个), 内容如下:

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host=pypi.tuna.tsinghua.edu.cn

windows:修改 windows在%HOMEPATH%pippip.ini,

例如:C:\Users\piaoyun\pip,新建文件pip.ini,内容如下

[global] index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host=pypi.tuna.tsinghua.edu.cn

配置方式

PyPi镜像地址有多种配置方式
系统全局配置 - /etc/pip.conf
当前用户配置 - $HOME/.pip/pip.conf
虚拟环境配置 - $VIRTUAL_ENV/pip.conf
临时指定镜像 - pip install -i 镜像地址 包名

即使配置了pip国内镜像,有些包安装过程中还是会卡住,因为自动装一些其他依赖时又会走python自带的源。

解决方法是修改/usr/lib/python3/dist-packages/setuptools/package_index.py

搜索 PackageIndex,修改如下:

class PackageIndex(Environment):
    """A distribution index that scans web pages for download URLs"""

    def __init__(
            #self, index_url="https://pypi.org/simple/", hosts=('*',),
            self, index_url="http://mirrors.aliyun.com/pypi/simple", hosts=('*',),
            ca_bundle=None, verify_ssl=True, *args, **kw
    ):
        Environment.__init__(self, *args, **kw)
        index_url = "http://mirrors.aliyun.com/pypi/simple"
        self.index_url = index_url + "/" [:not index_url.endswith('/')]
当前页面:飘云 » python pip源-PyPI使用国内源加速更新升级的设置方法

评论