【日常踩坑】解决 pip 安装第三方包时因 SSL 报错

这篇具有很好参考价值的文章主要介绍了【日常踩坑】解决 pip 安装第三方包时因 SSL 报错。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

踩坑

好久没用 python,最近重新下载安装好 python 后发现用 pip 安装第三方包一直失败。经过一番折腾发现,如果报错信息符合下面两种,一般都是因为网络连接时 SSL 认证失败导致的

  1. check_hostname requires server_hostname

    raise ValueError("check_hostname requires server_hostname")
    ValueError: check_hostname requires server_hostname

  2. EOF occurred in violation of protocol

    Could not fetch URL https://pypi.org/simple/xxx/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /simple/xxx/ (Caused by SSLError(SSLEOFError(8, 'EOF occurred in violation of protocol (_ssl.c:997)'))) - skipping

什么是 SSL ?

传输层安全性协议(英语:Transport Layer Security,TLS)及其前身安全套接层(英语:Secure Sockets Layer,SSL)是现在的 HTTPS 协议中的一种安全协议,目的是为互联网通信提供安全及数据完整性保障

而较新版本的 python 内置的 pip 以及用于网络请求的 requestsurllib3 包也较新,并且会使用 HTTPS 协议来下载新的软件包

为什么会报错

根据报错信息可以发现错误的根源就在于 SSL,也就是没有通过该安全协议的认证,通常是由于开启了网络代理、VPN 或者网络抓包等软件的导致的

解决办法

1. 临时关闭代理、VPN 或者网络抓包等软件

最推荐的办法是临时关闭代理、VPN 或者网络抓包等软件,但是如果关闭后下载速度过慢可以尝试后面两种解决办法

2. 通过镜像的 HTTP 源来避免 SSL 认证问题

由于是 SSL 是 HTTPS 协议需要的,因此我们可以切换至 HTTP 的镜像站来进行安装下载

HTTPS 现在已经比较普及,有不少镜像源也早已经切换至 HTTPS 协议,但部分镜像源在支持 HTTPS 协议的而同时也还支持 HTTP 协议,下面简单罗列几个 pip 镜像源

# 清华,仅支持 HTTPS
https://pypi.tuna.tsinghua.edu.cn/simple/

# 阿里,HTTP 和 HTTPS 均支持
http://mirrors.aliyun.com/pypi/simple/
https://mirrors.aliyun.com/pypi/simple/

# 豆瓣,HTTP 和 HTTPS 均支持
http://pypi.doubanio.com/simple/
https://pypi.doubanio.com/simple/

安装时第三方包时可以参考如下命令:

pip install xxx-package -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
pip install xxx-package -i http://pypi.doubanio.com/simple/ --trusted-host pypi.doubanio.com

如果想永久使用镜像站,则需要修改配置文件,以 Linux 为例:

vim ~/.pip/pip.conf

修改文件内容如下

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

[install]
trusted-host = mirrors.aliyun.com

3. 切换至低版本 pip

经过测试,当 pip 版本高于 20.3 后才会出现此错误,因此我们可以手动将 pip 版本降级至 20.2.4 或者 20.3b1 等较低版本即可

python -m pip install pip==20.2.4 -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
python -m pip install pip==20.2.4 -i http://pypi.doubanio.com/simple/ --trusted-host pypi.doubanio.com

参考资料

  • 【阿里云】PyPI 镜像
  • 【CSDN】python pip 的安装、更新、卸载、降级、和使用 pip 管理包
  • 【CSDN】修改 pip 配置文件路径、更改 pip 源、使用 pip 安装已经下载的 whl 文件

本文作者: ywang_wnlo
本文链接: https://ywang-wnlo.github.io/posts/2e7aa01a/
版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!文章来源地址https://www.toymoban.com/news/detail-411377.html

到了这里,关于【日常踩坑】解决 pip 安装第三方包时因 SSL 报错的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python第三方库(模块)下载和安装(使用pip命令)

    Python第三方库是由社区开发者编写的代码包,用于增强Python的功能和提供各种特定的功能。通常,这些库被打包为模块,可以通过使用Python包管理工具pip来下载和安装。 以下是使用pip下载和安装Python第三方库的详细步骤: 步骤1:检查Python环境和pip的安装情况 在安装Python第三

    2023年04月08日
    浏览(62)
  • pip安装python第三方库的四种方法

    pip install 库名 打开命令提示符【win + r】,输入cmd,在命令提示窗口输入pip install 库名, 再点击回车键【Enter】,就可以安装。当安装成功时,会提示successfully。例如,安装pytest库 使用该方法会存在由于网络不稳定时就无法安装成功的情况,遇到此情况时,可以多尝试几次,若

    2024年01月17日
    浏览(45)
  • 【python】使用pip安装python第三方库(简单易懂)

    作者:二月知野 专栏: 《人生苦短 我学python》 Python语言有超过12万个第三方库,覆盖信息技术几乎所有领域。例如:网络爬虫、自动化、数据分析与可视化、WEB开发、机器学习和其他常用的一些第三方库 什么是pip? pip是python的第三方库管理器,可以根据所开发项目的需要,使用

    2024年02月10日
    浏览(50)
  • 离线安装python、pip和python的第三方库

    安装python3的网址为点击这里 选择想要下载的对应版本进行下载,这里使用的是63位的Windows系统,因此下载的选的是: 下载后如图: python-3.7.9-amd64.exe是python3的安装程序 1)在离线安装时首先需要进行python环境的搭建,即安装python。双击打开python-3.7.9-amd64.exe安装程序,选择下

    2024年02月13日
    浏览(49)
  • Python 安装第三方库时遇到的问题(pip版本低、需更新)

    提示问题: 但是加载一会后又显示下载失败。 可能存在问题:pip下载的第三方库是国外的,不支持断点传输,网络很慢。当pip是下载到一半时才报的错,大概率可能是网络的问题。因此使用国内镜像pypi源,可实现快速下载。 解决方法:在要下载的库后面加上国内源,即可快

    2024年02月03日
    浏览(43)
  • pyhon项目中,使用pip安装第三方插件之后,明明使用pip list可以查到,但是在项目中import时仍然找不到怎么办?

    认识pip: python中的pip是用来安装python第三方库的工具,是安装python的时候自带的。         1.安装方式:pip install 第三方库名,比如:pip install selenium         2.查看已安装的所有第三方库:pip list 或 pip3 list  (如果系统中同时安装了Python2和Python3,则pip默认给Python2用

    2024年02月15日
    浏览(39)
  • 【用pycharm安装第三方库时出现错误】【‘pip‘ 不是内部或外部命令,也不是可运行的程序或批处理文件。】

    目录 一、问题描述 二、解决过程 1、pip的版本不是最新版本导致安装不了第三方库  2、pip最新版本安装出错 3、pip\\\' 不是内部或外部命令,也不是可运行的程序或批处理文件” 4、 ERROR: Could not find a version that satisfies the requirement PIL (from versions: none)         今天用 pycharm 做

    2024年02月16日
    浏览(47)
  • 【Python】Fatal error in launcher:Unable to create process using list(pip安装第三方模块时常见问题)

        一般会在cmd中输入 pip 指令时出现。(如下图)     其它博主推荐的\\\"python -m pip install\\\"方法如果没有用,那大概率是因为电脑存在多个版本的Python环境,此时唯一解决手段就是 将所有版本的Python全部卸载干净 ,然后再重新安装某一个版本的Python即可。     具体操作如下

    2024年02月16日
    浏览(60)
  • pycharm下载第三方模块之pip永久换源

    因为pycharm自带的pip install 下载比较慢,它的第三方包都在 pypi 上,而这个pypi 是国外的网站,所有下载起来比较慢 临时换源:pip install -i 源地址(清华,阿里,豆瓣) 推荐使用使用清华源和阿里源 永久换源,只要pip install 就是去国内镜像站下载 3.1、windows上配置 如图:以后只

    2024年02月16日
    浏览(61)
  • 解决Python安装第三方库慢的问题

    1. 阿里源: https://mirrors.aliyun.com/pypi/simple/ 2. 清华源: https://pypi.tuna.tsinghua.edu.cn/simple/ 3. 豆瓣源: http://pypi.douban.com/simple/ 4. 中科大源: https://pypi.mirrors.ustc.edu.cn/simple/

    2024年02月04日
    浏览(64)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包