美文网首页Python
pip install 加速(修改为国内源)

pip install 加速(修改为国内源)

作者: 章光辉_数据 | 来源:发表于2020-03-25 19:27 被阅读0次

    在国内,用 pip 安装 python 依赖包的时候,总是会遇到 Timeout 或者下载太慢的问题。

    这是因为 pip 源在国外,那么解决方法就是把 pip 源改成国内的,就可以实现 pip install 加速。

    1. 国内有哪些 pip 源?

    国内有几个名气比较大的源:

    个人这几年使用下来,偏向于使用清华的源,比较稳定。

    2. 怎么加速?

    答案前面已经说了,就是修改 pip 源,主要有两种方式:

    1. 每次安装的时候,手动指定国内的 pip 源。
    2. 修改本地的 pip 配置文件,默认为国内的 pip 源。

    2.1 手动指定 pip 源

    这里举了个例子:从清华的 pip 源下载 pandas 包。

    pip install pandas -i https://pypi.tuna.tsinghua.edu.cn/simple
    
    • 好处:不必修改本地的 pip 配置文件。
    • 坏处:每次都要在 pip install 后面添加老长一些代码。

    有些公司内部是会维护自己的 pip 源的,上面放了一些内部专用的依赖包,而员工电脑本地的 pip 配置文件一般已经指向公司内部 pip 源。

    有时候出于稳定性和速度的考虑,可能还是会用到这种安装方式。

    但绝大多数时候,还是建议修改本地的 pip 配置文件。

    2.2 修改本地的 pip 配置文件

    2.2.1 pip 配置文件在哪里?

    对于不同操作系统,pip 配置文件的路径和名称不太相同,甚至同一类操作系统,有可能因为版本不一样(如 win7 和 win XP)也会导致路径不一样,所以要根据自身情况寻找 pip 配置文件的有效路径。

    这里列了一些配置文件的路径,如果路径不存在,则需要自己先新建,然后再添加配置文件。

    Linux/Unix

    • /etc/pip.conf
    • ~/.config/pip/pip.conf
    • ~/.pip/pip.conf

    Mac

    • ~/.pip/pip.conf
    • ~/Library/Application Support/pip/pip.conf

    Windows

    • %USERPROFILE%\pip\pip.ini
    • %APPDATA%\pip\pip.ini
    • %HOME%\pip\pip.ini

    虚拟环境

    • 在Unix和macOS上,文件为:$VIRTUAL_ENV/pip.conf
    • 在Windows上,文件为: %VIRTUAL_ENV%\pip.ini

    2.2.2 pip 配置文件的优先级

    如果 pip 配置文件有很多个,则按照如下顺序读取配置:

    1. 读取站点范围(site-wide)的配置,这里指全局配置。
    2. 读取每个用户目录的配置。
    3. 读取特定于虚拟环境的配置。

    也就是说,如果这些位置都有配置文件,则后面读取的值会覆盖前面读取的值。

    2.2.3 pip 配置文件的内容?

    下面是我自己的配置。

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

    简单解释一下里面的参数:

    • timeout:超时时间为120秒,避免因为短暂的阻塞而导致下载失败,这个值设得太长也没意义,还不如尽早重试或换一个源。
    • index-url:清华源,pip install 时下载的地方。
    • trusted-host:添加清华源为可信主机,要不然可能报错。

    一般来说这样的配置文件就足够用了,如果想知道更多配置详情,可以参考官方教程:https://pip.pypa.io/en/stable/user_guide/

    相关文章

      网友评论

        本文标题:pip install 加速(修改为国内源)

        本文链接:https://www.haomeiwen.com/subject/mqbxuhtx.html