pip安装包以及更新报错Could not fetch URL :There was a problem confirming the ssl certificate

在运行代码的时候报错问题:requests.exceptions.SSLError: HTTPSConnectionPool(host=‘XXX’, port=443)

发现可能是由于requests没有安装依赖安装包

pip install cryptography

pip install pyOpenSSL

pip install certifi

因为需要使用pip安装这些包,所以就用cmd执行命令:pip install xxx,结果报错

然后百度找了很多种方法:

一、首先试了一下豆瓣镜像和清华pip源的方法安装包,看看是不是下载慢的问题

1、pip install xxxx(包) -i http://pypi.douban.com/simple【豆瓣】

     pip install xxxx(包) -i https://pypi.tuna.tsinghua.edu.cn/simple【清华】

结果还是不行,还是报一样的错,此路不通(×)

2、然后又觉得是不是pip没有更新的问题,又去更新pip

(1)首先使用报错提示的方法:python -m pip install --upgrade pip,结果一样(×)

(2)使用清华镜像再试一次:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pip -U,结果一样(×)

二、后来发现可能是ssl证书的问题,按照网上所说添加信任试一试安装包,就是后面蓝色字体的那一段

(1)pip install xxxx(包) -i http://pypi.douban.com/simple --trusted-host pypi.douban.com,加载出一些但依旧有问题(×)

然后给了几条debug assistance,我就看第一条还是让我去更新最新的pip,然后我就又去更新pip,并且加上--trusted-host ,也就是下面这条

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pip -U  --trusted-host pypi.tuna.tsinghua.edu.cn,结果更糟糕了(×)

提示无法访问,pip都被我弄没了,报错:ModuleNotFoundError: No module named 'pip',然后我又重新弄回来

python -m ensurepip,但是安装的并不是最新的版本,没啥区别

思路又断了,弄了一大轮,安装包还是会报前面那些错误。

三、尝试去弄创建pip配置环境

(1)在系统目录C:\Users\用户\AppData\Roaming新建pip文件夹;

(2)在pip文件夹下新建pip.ini文件,并写入如下配置:

[global]
index-url = http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host = mirrors.aliyun.com

我又跟着博客里面照做了,死马当活马医,还是不行。

感觉就是ssl证书的问题,但是我加了信任或者弄环境配置都不行,就很崩溃。就在这个时候,我发现

原来fiddler会自动改变端口,造成ssl错误!!!!!!

开着fiddler一边抓包一边搞,所以对requests模块也会产生ssl认证的报错

欲哭无泪,关掉,更新pip正常了,安装包也没毛病了。

感谢这位大佬,要是没看到他这篇博客还不知道还要搞多久——pip安装第三方包报错:There was a problem confirming the ssl certificate - 陌路麒麟 - 博客园

终于成功了,其实就是因为不了解fiddler原来会影响ssl端口这个点,导致我一个下午都在弄这个,记录一下~


版权声明:本文为qq_40758284原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。