一、pip安装出错类型

1.1 pip版本过旧导致不能安装

报错提示:

You are using pip version 9.0.3, however version 10.0.1 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' comm
and.

可通过以下命令升级pip

python -m pip install --upgrade pip

1.2 官方的PyPi连接超时

如果是timeout类形错误,那重点怀疑网络问题,可能是官方的PyPi太慢导致。

这类错误可通过在pip.ini中index-url指定为使用本地源进行处理。我这里以清华源为例,具体操作步骤看下边第二大点。

1.3 HTTPS证书问题

现在很多网站都换成了HTTPS,python验证证书没通过时就会拒绝使用PyPi源,通常报错如下:

Could not fetch URL https://pypi.tuna.tsinghua.edu.cn/simple/gg/: There was a
problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.tuna.tsin
ghua.edu.cn', port=443): Max retries exceeded with url: /simple/numpy/ (Caused by S
SLError(SSLError(, u'[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed
(_ssl.c:)'),)) - skipping

这类错误可通过在pip.ini中添加trusted-host进行处理。我这里以信任清华源为例,具体操作步骤看下边第二大点。

1.4 缺少VC环境依赖

这类错误处理,一是安装vc环境不过到现在我还不是很明白要装哪个文件,更推荐的做法是使用conda安装第三方库,具体操作参见“PyCharm+Miniconda3安装配置教程” 第二大点查看如何安装conda及参看3.2.2节看如何用conda安装第三方库

通常报错如下:

“distutils.errors.DistutilsPlatformError: Microsoft Visual C++ 14.0 is required”

“Command "python setup.py egg_info" failed with error code 1 in C:\Users\ADMINI~1\AppData\Local\Temp\pip-install-6fjrrgj5\cffi\”

20191212更新:

既然说缺少Microsoft Visual C++ 14.0 Build Tools那我们直接给他装上。(需要生成工具的原因,猜测是有些python库并不是单纯的python文件,还有c语言写的需要编译成exe等可执行文件)

visual studio installer下载地址:https://visualstudio.microsoft.com/zh-hans/thank-you-downloading-visual-studio/?sku=Community&rel=16#

build tool下载地址:https://visualstudio.microsoft.com/zh-hans/thank-you-downloading-visual-studio/?sku=BuildTools&rel=16&rr=https%3A%2F%2Fwww.scivision.dev%2Fpython-windows-visual-c-14-required%2F

两个本质上是一样的,而我们要装的都是一个,即”Microsoft Visual C++ 14.0 Build Tools“(VS中文名翻译成生成工具)。

不管是vs 2015还是vs 2017还vs 2019,用的都是14.x版本只是小版本不一样,我们装最新的即可,比如我这里直接装VS2019的。

由于VS无敌的大,为了避免C盘耗费过多建议修改安装地址。可以只勾选安装生成工具,但我这为了方便装了VS能用于编写C++就不取消色选其他组件了。但不管怎么样VS核心编缉器都是必须安装的,大概是微软为了避免有些小白想装VS最终装了一堆组件编缉器却没见到。

二、将PyPi切换为本地源并处理证书错误

注意:这个创建的pip.ini文件配置对conda等发行版中的pip也生效,因为conda等中的pip本质也是pip。

2.1 查看%APPDATA%路径【可选】

echo %APPDATA%

2.2 创建 %APPDATA%\pip\目录

我这里直接在cmd使用命令创建。图形界面创的话,上一步我们已查到%APPDATA%的指向了一层层根着创即可

mkdir %APPDATA%\pip

2.3 创建pip.ini文件

使用文件编辑器创建一个文本,然后输入以下内容,并将其保存到上边的%APPDATA%\pip\目录下,命名为pip.ini即可(注意不要保存成pip,ini.txt)

Linux等是$HOME/.config/pip/pip.conf,index-url行可不需要

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

2.4 验证源成功切换且无报错

我这里以pip安装faker库进行验证,自己随便装什么都行

pip install faker

三、配置代理【可选】

应该来讲在把源设置成国内源后应该来讲,网络网速什么的就应该都没问题了,也就没有配置代理的需求。

但在一些公司访问中不允许pip直接访问外部网站,一定要通过公司代理才能访问,这时就只能配置代理。

配置代理也简单,一样在%APPDATA%\pip\pip.ini的[global]节区中设置proxy值即可。假设代理为“http://proxy.company.com:8080”:

[global]
trusted-host = pypi.tuna.tsinghua.edu.cn
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
proxy = http://proxy.company.com:8080

参考:

https://mirrors.tuna.tsinghua.edu.cn/help/pypi/

http://mirrors.ustc.edu.cn/help/pypi.html

https://superuser.com/questions/727924/pip-and-ssl-certificate-errors

https://stackoverflow.com/questions/9698557/how-to-use-pip-on-windows-behind-an-authenticating-proxy

pip安装报错处理+PyPi源切换教程的更多相关文章

  1. 安装Tensorflow过程pip安装报错:is not a supported wheel on this platform

    安装Tensorflow过程pip安装报错:is not a supported wheel on this platform 通过pip安装wheel镜像时,安装指令为: pip install - ...

  2. pip安装报错: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProxyError('Cannot connect to proxy

    pip安装报错 解决办法: pip install selenium -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

  3. Python——pip安装报错:is not a supported wheel on this platform

    pip安装报错:is not a supported wheel on this platform 可能的原因1:安装的不是对应python版本的库,下载的库名中cp35代表python3.5,其它同 ...

  4. 使用pip安装报错的处理方法

    在新的机子上使用pip安装程序一直报错: Retrying (Retry(total=4, connect=None, read=None, redirect=None)) after connect ...

  5. 使用pip安装报错的处理方法_2

    终端更新pip出错 sudo pip install --upgrade pip : 1.ReadTimeoutError: HTTPSConnectionPool(host='pypi.Python ...

  6. pip安装报错:is not a supported wheel on this platform

    可能的原因1:安装的不是对应python版本的库,下载的库名中cp27代表python2.7,其它同理. 可能的原因2:这个是我遇到的情况(下载的是对应版本的库,然后仍然提示不支持当前平台) 我下载到 ...

  7. 【python】pip安装报错UnicodeDecodeError: 'ascii' codec can't decode byte 0xc4 in position 7: ordinal not in range(128)

    刚安装完python,准备pip安装第三方库的时候出现了一个错误: UnicodeDecodeError: ‘ascii’ code can’t decode byte 0xef in positio ...

  8. python中使用pip安装报错:Fatal error in launcher... 解决方法

    python安装了2和3版本在 cmd 中用pip报的错误为:Fatal error in launcher:Unable to create process using 这是因为你安装了python ...

  9. pip安装报错:Fatal error in launcher: Unable to create process using '"'

    pip安装包报错 解决方案: pip需要升级,可使用以下脚本: python -m pip install -U pip

随机推荐

  1. trackViewer 氨基酸位点变异位置图谱展示

    内容中包含 base64string 图片造成字符过多,拒绝显示

  2. 浅谈Linux文件系统

    Linux 与其他类 UNIX 系统一样并不区分文件与目录:目录是记录了其他文件名的文件.使用命令 mkdir 创建目录时,若期望创建的目录的名称与现有的文件名(或目录名)重复,则会创建失败. Lin ...

  3. java常用技术名词解析

    1.1 token Token是服务端生成的一串字符串,以作客户端进行请求的一个令牌,当第一次登录后,服务器生成一个Token便 将此Token返回给客户端,以后客户端只需带上这个Token前来请求数 ...

  4. [原][osg][osgEarth]EarthManipulator关于oe漫游器的handle部分解读以及修改(仿照谷歌,修改oe漫游器中focal(视角切换)功能 续 二)

    bool EarthManipulator::handle(const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa) ...

  5. 学习笔记15—Python 存储集

    1. save using pickle      with open('F:/BrainAging/result/ordered_data_final_just_TD_leaveOne.pickle ...

  6. MySQL学习(九)

    1 一道面试题 新建两张表 mysql> create table m -> ( -> mid int, -> hid int, -> gid int, -> mr ...

  7. Python全栈开发-Day11-RabbitMQ/Redis

    本节内容 RabbitMQ——消息队列 Memcached & Redis使用 1.RabbitMQ——消息队列 RabbitMQ与Queue的关系 1.做的事情是一样的,两者都是队列. 2. ...

  8. Java将byte[]和int的互相转换

    /** * 将整数转换为byte数组并指定长度 * @param a 整数 * @param length 指定长度 * @return */ public static byte[] intToBy ...

  9. 7.2内存管理-ARC

    @0-简介 1编译器会自动在适当的地方插入适当的retain.release.autorelease语句 @1-ARC的判断原则 1只要还有一个强指针变量指向对象,对象就会保持在内存中 2强指针   ...

  10. datatabe 与string

    DataTable到string /// <summary>         /// DataTable 到 string         /// </summary>     ...