CERT_NONE is not defined

緣起

突然想學習下requests,不過在安裝requests 時卻報了這個錯誤:“NameError: name 'CERT_NONE' is not defined”。
在Googole上搜索之後才知道,requests需要 ssl 的支持,源碼編譯安裝的 Python若需要提供 ssl 的支持,在編譯前需要系統已安裝了 libssl-dev 庫。
而我使用的是通過 Pythonz編譯安裝的Python,經驗證是未提供 ssl 的支持。(驗證方法見下文。)

解決方法

知道原因後就好辦了,解決方法如下:

  1. 在系統中安裝必要的庫:sudo apt-get install libssl-dev
  2. 刪除通過Pythonz安裝的 Python:pythonz uninstall 2.7.3(詳細的安裝Python方法見上一篇博文)
  3. 重新編譯安裝Python:pythonz install 2.7.3
  4. 驗證 ssl :python -c "import ssl";(若未報錯即已支持;反之,請繼續Google,我也愛莫能助了。)
  5. 安裝 requests:pip install requests

希望對你有所幫助,特此分享之。

本文的系統環境爲 Utubut 12.04 。

你可能感兴趣的:(python,requests,pythonz,libssl-dev,cert_none)