博客
关于我
python安装库超时,修改pip源
阅读量:753 次
发布时间:2019-03-23

本文共 1495 字,大约阅读时间需要 4 分钟。

错误描述

尝试访问以下网址时出现网络连接问题,原因是国家网络防火墙可能限制了某些外部资源的访问。这可能会影响一些依赖网络请求的软件安装,比如我遇到的 selenium 包安装问题。


错因分析

当尝试通过 pip 安装 selenium 时,可能会遇到如下的错误信息:

Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple/

Collecting selenium
Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError'
...
Failed to establish a new connection: [Errno 11001] getaddrinfo failed

错误信息表明,pip 在尝试从常用的镜像源 https://pypi.tuna.tsinghua.edu.cn/simple 下载 selenium 时,遇到了网络不可达的问题。


解决方法

临时修改

在执行 pip install 时,可以通过参数 -i指定镜像源,直接指定一个可用的镜像地址:

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

这种方式适用于偶尔访问网络受限的环境。

永久修改

对于经常使用 pip 的开发者,可以通过修改全局配置文件来永久切换镜像源。

在 Linux 环境中,配置步骤如下:

  • 打开 ~/.pip/pip.conf 文件(如果没有,需新建文件)。
  • 添加以下内容:
  • [global]index-url = https://pypi.tuna.tsinghua.edu.cn/simple

    或选择其他高效的镜像源:

    • 阿里云镜像:https://mirrors.aliyun.com/pypi
    • 清华大学镜像:https://mirrors.tq Deduction.com/pypi/(注意镜像路径可能有变化)

    在 Windows 环境中,可以按照以下步骤操作:

  • 创建用户目录中的 pip 文件夹:
    C:\Users\YOU> mkdir C:\Users\YOURUSER\pip
  • 创建并编辑新的 pip.ini 文件。
  • 在文件中添加如下内容:
  • [global]timeout = 6000index-url = https://pypi.tuna.tsinghua.edu.cn/simple# 可选:启用镜像域名白名单trusted-host = mirrors.tsinghua.com

    国内镜像推荐

    以下是一些国内常用的镜像源,供开发者参考:

    镜像地址 是否支持镜像锁定
    https://mirrors.aliyun.com/pypi 是
    https://mirrors.jinkec.com/pypi 是
    https://pypi.org/simple/ 否
    https://mirrors.tq-deduction.com/pypi 否
    https://mirrors.chrome.com/pypi 否

    根据网络环境情况,可以根据需求选择合适的镜像源。


    总结

    通过上述方法,可以有效解决因网络限制导致的 pip 安装失败问题。如果某些镜像源仍不方便访问,可以尝试多个镜像地址或选择靠近自己所在地区的镜像源,以提高下载速度和稳定性。

    转载地址:http://tqjzk.baihongyu.com/

    你可能感兴趣的文章
    PYTHON--欧拉习题二
    查看>>
    python--高级应用总结
    查看>>
    python-520表白代码,我看谁说程序员不懂浪漫,送你几套表白代码,一步到位
    查看>>
    Python-Asyncio TypeError:无法在‘;等待‘;表达式中使用对象DICT
    查看>>
    Python-AttributeError:‘;dict&39;对象没有属性‘;序列‘;
    查看>>
    Python-ldap:是否可以在不显式写入密码的情况下进行绑定?
    查看>>
    python出现 unknown encoding: idna 的处理方法
    查看>>
    Python出现 RuntimeError: dictionary changed size during iteration 的解决方法
    查看>>
    Python-numpy(2)数组的操作
    查看>>
    Python-Numpy的tile函数用法
    查看>>
    python-open函数
    查看>>