【Linux】使用pip3安装pexpect,解决报错:the ssl module in Python is not available

devtools/2024/10/18 14:15:34/

pip3是python3的包管理工具,安装、卸载、更新等管理python包。

pexpect是其中一个python库,用于自动化与终端交互。

centos7使用pip3安装pexpect,报错:

pip3 install pexpect

原因:使用python3解释器导入ssl库检查ssl是否配置好,结果报错没有此模块,则openssl-1.1.1没有配置好。

解决:需确保openssl-1.1.1安装成功,安装目录和可执行文件均在指定位置,再重新安装python3。

重新安装python3(版本3.10):

1、先确认openssl-1.1.1成功安装,且相关文件在指定位置:

openssl version
ll /usr/bin | grep openssl
ll /usr/local | grep openssl

2、删除pytho3原来的安装目录和相关文件:

指定位置:/usr/bin是存放各软件的可执行文件。/usr/local是存放各软件的安装目录。

我一般下载的压缩包放在/opt/src目录下,安装目录放在/opt目录下。再将安装目录和可执行文件软链接到指定位置。

# 查看与python3相关的文件和目录
ll /usr/bin | grep python
ll /usr/local | grep python
ll /opt | grep python# 删除与python3相关的文件和目录
rm -rf /usr/bin/python3
rm -rf /usr/bin/pip3
rm -rf /usr/local/python-3.10.14
rm -rf /opt/python-3.10.14

3、重新安装python3.10.14:

# 切换到下载目录下(我一般下载在/opt/src目录下)
cd /opt/src# 网页下载python3.10
wget https://www.python.org/ftp/python/3.10.14/Python-3.10.14.tgz# 解压缩
tar -zxvf Python-3.10.14.tgz# 切换到Python目录下,并查看该目录下所有文件(有configure,需编译安装)
cd Python-3.10.14 && ls# 配置编译参数
./configure --prefix=/opt/python-3.10.14 --enable-optimizations --with-openssl=/usr/local/openssl-1.1.1w --with-openssl-rpath=auto# 重新编译安装
make -j && make altinstall# 切换到python安装目录下,并查看该目录及bin目录下所有文件(bin目录下有python3.10可执行文件)
cd /opt/python-3.10.14 && ls && ls bin# 查看指定位置下是否已有相关文件和目录
ll /usr/bin | grep python
ll /usr/local | grep python# 将python3的目录和可执行文件软链接到指定位置
ln -s /opt/python-3.10.14 /usr/local/python3
ln -s /opt/python-3.10.14/bin/python3.10 /usr/bin/python3
ln -s /opt/python-3.10.14/bin/pip3.10 /usr/bin/pip3# 查看python3和pip3版本
python3 --version
pip3 --version

重新使用pip3安装pexpect:

# 使用pip3重新安装pexpect
pip3 install pexpect# 检查pexpect是否安装成功
pip3 list | grep pexpect
# 进入python解释器检查pexpect是否可以导入成功
python3
(进入python解释器,导入pexpect库)import pexpect


http://www.ppmy.cn/devtools/45267.html

相关文章

Docker Swarm - 删除 worker 节点

1、前提:集群环境已经运行 在manager节点上执行: # 查看节点信息 >>> docker node lsID HOSTNAME STATUS AVAILABILITY MANAGER STATUS ENGINE VERSION jr06s8pbrclkrxt7jpy7wae8t * iZ2ze78653g2…

随机森林分析:R语言轻松实现微生物组随机森林分析及重要变量的选择

数据和代码获取:请查看主页个人信息!!! 大家好!欢迎来到R语言数据分析视界。今天我来介绍微生物组执行随机森林分类分析的R语言操作方法。微生物组的随机森林分析可以用于研究微生物组的组成和功能与其他因素&#xff…

Python面试宝典:Python中与Pandas数据分析相关的面试笔试题(1000加面试笔试题助你轻松捕获大厂Offer)

Python面试宝典:1000加python面试题助你轻松捕获大厂Offer【第二部分:Python高级特性:第十七章:数据处理和分析:第二节:Pandas数据分析】 第十七章:数据处理和分析第二节:Pandas数据分析1. Pandas的核心数据结构2. 创建Series和DataFrame3. 数据访问和选择4. 数据清洗5…

Scala编程基础4 类、对象、继承、特质

类、对象、继承、特质 小白的Scala学习笔记 2024‎/5‎/28‎ 11:30:40 文章目录 类、对象、继承、特质Scala可以在类中、非方法中写代码,可以理解为代码写到了构造方法中 继承、接口抽象类样例类 package com.oracle.jt.testobjectimport scala.collection.mutable.…

Docker安装Elasticsearch与案例

Elasticsearch安装与案例 1 ElasticSearch相关配置1.1 下载镜像文件1.2 创建实例1.3 安装1.4 错误日志排查1.5 放开权限,在elasticsearch目录下之心1.6 主机访问 192.168.xxx.xxx:9200 2 Kibana安装2.1 访问 :http://192.168.233.128:5601/2.2 设置启动d…

Qt第三方库QicsTable简单实例(1)

闲来无事,无意间看到一个Qics表格操作第三方库,自己写了一个特别简单的实例,效果如图所示: 操作界面的数据还是特别快的,因为使用了模型

大数据开发面试题【Flume篇】

79、介绍下Flume以及架构 是一个开源的日志系统,是一个分布式。可靠性和高可用的海量日志聚合系统,支持在系统中定制各类数据发送方,用于收集数据 Agent:是一个jvm进程,他以时间的形式将数据从源头送至目的地、Agent …

微信小程序怎么注册账号

要注册微信小程序账号,你需要遵循以下步骤: 访问微信公众平台: 首先,你需要访问微信公众平台的官方网站(https://mp.weixin.qq.com/)。 注册或登录: 如果你已经有一个微信公众平台账号&#xf…