首页 > 系统相关 >Linux环境运行python项目提示No module named '_ssl'

Linux环境运行python项目提示No module named '_ssl'

时间:2024-03-20 15:55:57浏览次数:16  
标签:named 1.1 python openssl ssl usr local python3

版本

python3.11.4

控制台错误提醒

File "/usr/local/python3/lib/python3.11/ssl.py", line 100, in <module>
	import _ssl  # if we can't import it, let the error propagate
	^^^^^^^^^^^
ModuleNotFoundError: No module named '_ssl'

错误原因:

centos7-2009默认openssl版本为1.0.2k,python从3.7.0开始,要求openssl的版本最低要为1.0.2或1.1.0,或者使用libressl来代替openssl

解决:

升级openssl

下载openssl

https://www.openssl.org/source/old/1.1.1/index.html
image

我这里选择的是1.1.1n版本

安装

tar -zxvf openssl-1.1.1n.tar.gz

cd openssl-1.1.1n

./config --prefix=/usr/local/openssl

make && make install

修改软链接

mv /usr/bin/openssl /usr/bin/openssl.bak
ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl

修改相关文件

echo “/usr/local/openssl/lib” >> /etc/ld.so.conf

# 设置生效
ldconfig -v 

确认版本

openssl version

重新编译安装python3

重新编译安装python3,进入python3控制台 import ssl 没有报错就成功了

[root@master Python-3.11.4]# python3
Python 3.11.4 (main, Mar 20 2024, 15:45:35) [GCC 4.8.5 20150623 (Red Hat 4.8.5-44)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import ssl
>>>

标签:named,1.1,python,openssl,ssl,usr,local,python3
From: https://www.cnblogs.com/luyifo/p/18085420

相关文章

  • Python修炼秘籍--Python数值类型(Day3)
    数值类型(Day3)一、数字类型1、整数:int2、布尔值:bool3、浮点数:float4、复数:complex5、数值运算符二、数字类型转换1、整数转换函数2、浮点数转换函数3、eval(‘x’)函数三、常用数学函数1、pow(x,y)1、pow(x,y,z)2、max(arg1,arg2,…)3、min(arg1,arg2,…)4、divmod(x,......
  • Python修炼秘籍--Python语言基础(Day2)
    Python语言基础(Day2)一、数据与数据类型1、数据2、数值类型3、文本序列:字符串4、序列类型5、集合和字典类型二、对象与变量1、对象2、变量3、变量(标识符)命名4、关键字(保留字)三、编码与命名规范1、编码规范2、Python编码规范PEP83、命名规范一、数据与数据类型1、......
  • 流畅的 Python 第二版(GPT 重译)(九)
    第四部分:控制流第十七章:迭代器、生成器和经典协程当我在我的程序中看到模式时,我认为这是一个麻烦的迹象。程序的形状应该只反映它需要解决的问题。代码中的任何其他规律性对我来说都是一个迹象,至少对我来说,这表明我使用的抽象不够强大——通常是我手动生成我需要编写的某个宏的......
  • 流畅的 Python 第二版(GPT 重译)(十三)
    第二十四章:类元编程每个人都知道调试比一开始编写程序要困难两倍。所以如果你在编写时尽可能聪明,那么你将如何调试呢?BrianW.Kernighan和P.J.Plauger,《编程风格的要素》¹类元编程是在运行时创建或自定义类的艺术。在Python中,类是一等对象,因此可以使用函数在任何时候......
  • 流畅的 Python 第二版(GPT 重译)(三)
    第五章:数据类构建器数据类就像孩子一样。它们作为一个起点是可以的,但要作为一个成熟的对象参与,它们需要承担一些责任。马丁·福勒和肯特·贝克¹Python提供了几种构建简单类的方法,这些类只是一组字段,几乎没有额外功能。这种模式被称为“数据类”,而dataclasses是支持这种模式......
  • 流畅的 Python 第二版(GPT 重译)(四)
    第二部分:函数作为对象第七章:函数作为一等对象我从未认为Python受到函数式语言的重大影响,无论人们说什么或想什么。我更熟悉命令式语言,如C和Algol68,尽管我将函数作为一等对象,但我并不认为Python是一种函数式编程语言。GuidovanRossum,PythonBDFL¹Python中的函数......
  • 流畅的 Python 第二版(GPT 重译)(五)
    第九章.装饰器和闭包有人对将这个功能命名为“装饰器”的选择提出了一些抱怨。主要的抱怨是该名称与其在GoF书中的用法不一致。¹名称decorator可能更多地归因于其在编译器领域的用法—语法树被遍历并注释。PEP318—函数和方法的装饰器函数装饰器让我们在源代码中“标......
  • 流畅的 Python 第二版(GPT 重译)(六)
    第三部分:类和协议第十一章:一个Python风格的对象使库或框架成为Pythonic是为了让Python程序员尽可能轻松和自然地学会如何执行任务。Python和JavaScript框架的创造者MartijnFaassen。¹由于Python数据模型,您定义的类型可以像内置类型一样自然地行为。而且这可以......
  • python连接clickhouse-当密码中存在特殊字符比如@时处理方法
    我是使用clickhouse_sqlalchemy库来使用clickhous的。我的密码是:'Lovedan@971220'连接clickhous执行sql语句时候,会报错认证失败:Origexception:Code:516,e.displayText()=DB::Exception:default:Authenticationfailed:passwordisincorrectorthereisnouserwith......
  • python连接clickhouse数据库
    fromclickhouse_sqlalchemyimportmake_sessionfromsqlalchemyimportcreate_enginefromsqlalchemy.sqlimporttextimporturllib.parseuser='default'pw=urllib.parse.quote_plus('Lovedan@971220')database='default'addrs=[�......