热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Centos6/7安装Python3.5及SSL编译安装,实现HTTPS识别

Python3中无法导入ssl模块的解决办法如果你发现在python3脚本运行过程中发现涉及到ssl模块都无法运行的情况下。那么需要进行如下步骤第一步:yuminst

Python3中无法导入ssl模块的解决办法

如果你发现在python3脚本运行过程中发现涉及到ssl模块都无法运行的情况下。那么需要进行如下步骤

第一步:

yum install openssl openssl-devel -y

第二步:

这个问题,已经困扰我好几天了,本萌新刚开始接触python,想爬取几个网页试试

发现urllib无法识别https,百度后才知道要导入ssl模块,可是发现又报错了

本人实在无法理解为什么会报错,因为ssl模块确实在lib/python3.6这个目录下,

求助度娘后,才知道python中要使用ssl需要有openssl作为前置,

于是安装openssl,但是发现openssl已经安装了,进入到系统自带那个

python2.7中,发现导入ssl没有报错,

到这个时候已经能大致确定原因了,就是python3在安装的过程中无法使用openssl,

根据网上的一些博客的做法,要进入到python源码包解压后的那个目录下的Modules/Setup

注意Setup这个文件,只有在python完成安装后才会生成这个文件

用vim编辑,找到上图部分,把上图横线部分部分的#给去掉

然后再编译 make

安装  make install

但是这个时候又特么悲剧的报错了,说是找不到openssl/rsa这个文件,

百度之后,说是缺少openssl的开发包,因为你尝试编译的程序使用openssl

但是缺少和openssl链接的库与头文件,需要安装openssl的开发包。

因为我使用的是linuxmint,是基于ubantu的发行版,需要安装openssl-dev

安装:apt-get install openssl-dev

再来编译 make

安装  make install

这两步是对已近安装的python再进行覆盖安装

到此为止问题就解决了

 

总结一下:

当你发现无法导入ssl的时候

首先检查一下,是否安装了openssl

再来检查一下是否安装openssl的开发包



推荐阅读
  • 本文详细介绍了在 CentOS 7 系统中安装 Python 3.7 的步骤,包括编译工具的安装、Python 3.7 源码的下载与编译、软链接的创建以及常见错误的处理方法。 ... [详细]
  • Jupyter Notebook多语言环境搭建指南
    本文详细介绍了如何在Linux环境下为Jupyter Notebook配置Python、Python3、R及Go四种编程语言的环境,包括必要的软件安装和配置步骤。 ... [详细]
  • 本文详细介绍了如何在ARM架构的目标设备上部署SSH服务端,包括必要的软件包下载、交叉编译过程以及最终的服务配置与测试。适合嵌入式开发人员和系统集成工程师参考。 ... [详细]
  • 在Ubuntu 18.04上使用Nginx搭建RTMP流媒体服务器
    本文详细介绍了如何在Ubuntu 18.04上使用Nginx和nginx-rtmp-module模块搭建RTMP流媒体服务器,包括环境搭建、配置文件修改和推流拉流操作。适用于需要搭建流媒体服务器的技术人员。 ... [详细]
  • 本文详细介绍了在 Red Hat Linux 系统上安装 GCC 4.4.2 的步骤,包括必要的依赖库的安装及常见问题的解决方法。 ... [详细]
  • Node.js在服务器上的多种部署策略
    本文探讨了Node.js应用程序在服务器上部署的几种有效方法,包括使用Screen、PM2以及通过宝塔面板进行简易管理。 ... [详细]
  • 本文详细介绍了如何在 Ubuntu 16.04 系统上配置 Qt 5.5 的交叉编译环境,特别针对 i.MX6 平台进行了优化设置。内容涵盖从基本的软件安装到高级配置的全过程。 ... [详细]
  • 利用 Calcurse 在 Linux 终端高效管理日程与任务
    对于喜爱使用 Linux 终端进行日常操作的系统管理员来说,Calcurse 提供了一种强大的方式来管理日程安排、待办事项及会议。本文将详细介绍如何在 Linux 上安装和使用 Calcurse,帮助用户更有效地组织工作。 ... [详细]
  • CentOS7通过RealVNC实现多人使用服务器桌面
    背景:公司研发团队通过VNC登录到CentOS服务器的桌面实现软件开发工作为防止数据外泄,需要在RealVNC设置禁止传输文件、访问粘贴板等策略过程&# ... [详细]
  • JUnit下的测试和suite
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 本文介绍了SELinux的两种主要工作模式——强制模式和宽容模式,并提供了如何在CentOS 7中正确启用和配置SELinux的方法,以及在遇到登录问题时的解决策略。 ... [详细]
  • 龙蜥社区开发者访谈:技术生涯的三次蜕变 | 第3期
    龙蜥社区的开发者们通过自己的实践和经验,推动着开源技术的发展。本期「龙蜥开发者说」聚焦于一位资深开发者的三次技术转型,分享他在龙蜥社区的成长故事。 ... [详细]
  • 本文介绍了一种方法,通过使用Python的ctypes库来调用C++代码。具体实例为实现一个简单的加法器,并详细说明了从编写C++代码到编译及最终在Python中调用的全过程。 ... [详细]
  • java类名的作用_java下Class.forName的作用是什么,为什么要使用它?
    湖上湖返回与带有给定字符串名的类或接口相关联的Class对象。调用此方法等效于:Class.forName(className,true,currentLoader) ... [详细]
  • 本文详细介绍了如何在 CentOS 7 及其衍生发行版(如 Red Hat, Oracle, Scientific Linux 7)上安装和完全卸载 GitLab。包括安装必要的依赖关系、配置防火墙、安装 GitLab 软件包以及常见问题的解决方法。 ... [详细]
author-avatar
天空的鸟儿飞
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有