Centos6-7安裝Python3.5以及SSL的編譯安裝,識別https


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的開發包


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM