python3遇到Can‘t connect to HTTPS URL because the SSL module is not available.

远程服务器centos7系统上有minicoda3,觉得太占空间,就把整个文件夹删了,原先的Python3也没了,都要重装。

我自己的步骤:进入管理员模式

1.下载Python3的源码:

wget https://www.python.org/ftp/python/3.10.11/Python-3.10.11.tgz

2.解压

tar zxf Python-3.10.5.tgz

3.进入文件夹

cd Python-3.10.11

4.检查平台属性

./configure

5.编译和安装

make && make install

6.建立软链接

可以先看下Python的安装位置

whereis python

ln -sf /usr/python/bin/python3(python 安装目录) /usr/bin/python

7.测试

python -V

这里显示已经安装成功Python3。

8.安装pip

yum -y install epel-release

yum install python-pip

9.由于yum必须要Python2才能执行,所以要修改配置文件的首行,明确其为Python2

先是

vi /usr/bin/yum

进入该文件后,把

#! /usr/bin/python

修改为

#! /usr/bin/python2

再将

vi /usr/libexec/urlgrabber-ext-down

的首行进行相同操作,保存。

即可正常使用yum

之后我还将pip3链接到全局,这样就能正常使用pip了

sudo ln -s /usr/local/bin/pip3 /usr/bin/pip

还配置了pip源,步骤是

新建文件:

mkdir -p ~/.pip

touch ~/.pip/pip.conf

vim ~/.pip/pip.conf

编辑文件内容:

[global]

index-url=https://pypi.tuna.tsinghua.edu.cn/simple/

extra-index-url=

http://pypi.douban.com/simple/

http://mirrors.aliyun.com/pypi/simple/

#proxy = [user:passwd@]proxy.server:port

[install]

trusted-host=

pypi.tuna.tsinghua.edu.cn

pypi.douban.com

mirrors.aliyun.com

ssl_verify: false

完成之后,测试了pip安装第三方包,大部分之间会出现重连失败,原因是Python的ssl缺失,只有偶尔才会成功安装。

弄了近一天后,我直接把上面这个配置源删了,同时安装openssl和所有的依赖,但是都没见效。

最后的解决方法:

1.观察到ssl在Python2里有,但是3没有,测试方法:

import ssl

print(ssl)

不报错就是有

2.找到自己的openssl的安装目录

whereis openssl

把安装目录复制,打开Python3的安装目录下的Modules/Setup

vim Modules/Setup

去掉这些ssl的注释,把ssl的值更换为自己的安装目录

然后再重新编译安装Python3

cd Python-3.10.11

./configure --with-ssl

make

sudo make install

问题解决。

其实应该先装openssl的,参考

https://blog.csdn.net/zltliqi/article/details/126449120

体验了一天的Linux操作,学到了。

参考:

  1. https://blog.csdn.net/sinat_36184075/article/details/80357542
  2. https://blog.csdn.net/YMY_mine/article/details/103804365
  3. https://huaweicloud.csdn.net/6380687ddacf622b8df86ef6.html?spm=1001.2101.3001.6650.6\&utm_medium=distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~activity-6-123628224-blog-109078288.235^v39^pc_relevant_yljh\&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~activity-6-123628224-blog-109078288.235^v39^pc_relevant_yljh\&utm_relevant_index=7
  4. https://zhuanlan.zhihu.com/p/435276410
  5. https://blog.csdn.net/Jackie_vip/article/details/105762378
  6. https://blog.csdn.net/zltliqi/article/details/126449120
  7. https://blog.csdn.net/feosun/article/details/73196299
  8. https://zhuanlan.zhihu.com/p/640390600
  9. https://www.zhihu.com/tardis/zm/art/491817098?source_id=1005
相关推荐
Koi慢热4 分钟前
路由基础(全)
linux·网络·网络协议·安全
刽子手发艺2 小时前
WebSocket详解、WebSocket入门案例
网络·websocket·网络协议
速盾cdn6 小时前
速盾:CDN是否支持屏蔽IP?
网络·网络协议·tcp/ip
网络安全-老纪12 小时前
iOS应用网络安全之HTTPS
web安全·ios·https
Lws17 小时前
CS144 lab0(个人理解)
网络协议
C++忠实粉丝20 小时前
计算机网络socket编程(2)_UDP网络编程实现网络字典
linux·网络·c++·网络协议·计算机网络·udp
添砖java_85721 小时前
UDP数据报套接字编程
网络·网络协议·udp
lxkj_20241 天前
修改ffmpeg实现https-flv内容加密
网络协议·https·ffmpeg
千羽星弦1 天前
Apache和HTTPS证书的生成与安装
网络协议·https·apache
程序猿小D1 天前
第三百三十节 Java网络教程 - Java网络UDP服务器
java·开发语言·网络·网络协议·udp·多线程