“pip 配置了需要 TLS/SSL 的位置,但是 Python 中的 ssl 模块不可用”
Posted
技术标签:
【中文标题】“pip 配置了需要 TLS/SSL 的位置,但是 Python 中的 ssl 模块不可用”【英文标题】:"pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available" 【发布时间】:2019-06-21 00:41:44 【问题描述】:我有 anaconda 包并运行 Spyder。这是我的系统信息:
anaconda 2018.12 py37_0
Python 3.7.1
pip 18.1
Dell Inspiron 13 7000 64-bit
我无法在命令提示符下使用 pip 安装任何东西。例如,我在尝试安装 numpy 时得到以下信息(我已经通过 anaconda 获得了):
pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
Requirement already satisfied: numpy in c:\users\uday rallabhandi\anaconda3\lib\site-packages (1.15.4)
pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
Could not fetch URL https://pypi.org/simple/pip/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /simple/pip/ (Caused by SSLError("Can't connect to HTTPS URL because the SSL module is not available.")) - skipping
请帮助我理解为什么会这样。
【问题讨论】:
相关:***.com/questions/41328451/… github.com/explosion/spaCy/issues/2208 【参考方案1】:这是我在带有 Anaconda 的 Windows 10 上纠正错误的过程:
-
在我的环境变量中添加了以下路径:
/AppData/Local/Continuum/Anaconda3
/AppData/Local/Continuum/Anaconda3/Scripts
/AppData/Local/Continuum/Anaconda3/Library
/AppData/Local/Continuum/Anaconda3/Library/Bin
在这个阶段,错误信息仍然存在。
-
我从 Anaconda Prompt 安装了最新版本的 pip:
python -m pip install --upgrade pip
这似乎纠正了 DLL 冲突。
【讨论】:
在 Win10 上为我工作。为什么anaconda3默认不将/Library添加到PATH?! 这个解决方案是唯一对我有用的解决方案,非常感谢。赢 10 专业版 该解决方案有效。该文件anaconda3\Library\bin\libssl-1_1-x64.dll
应该在$PATH
也为我工作,但我不必升级 pip (Windows 10)。 @DmitryAvtonomov 我认为 Anaconda 安装程序现在为您提供了是否添加到路径的选项。默认情况下,该选项未选中,“不推荐”【参考方案2】:
我遇到了完全相同的问题。我的电脑完全一样,Python和pip的版本也一样。
这是与 libeay32.dll 的 dll 冲突。
我可以通过在系统环境中添加具有 libeay32.dll(在我的情况下为 C:\Users\Gabriel\Anaconda3\pkgs\openssl-1.1.1a-he774522_0\Library\bin)的 python 的 dir 路径来解决这个问题最高位置。
【讨论】:
我有:.../pkgs/openssl-1.1.1a-he774522_0,但没有 libeay32.dll。 win 8.1 我还能在哪里找到它?【参考方案3】:尝试使用 pip3 而不是 pip 进行安装/更新。
【讨论】:
【参考方案4】:我的 bin 文件夹中也没有 libeay32.dll,但是在将 C:\Users\<user name>\Anaconda3\pkgs\openssl-1.1.1a-he774522_0\Library\bin
添加到路径顶部后,它就可以工作了。这是在 Windows 10 64 位上。
【讨论】:
【参考方案5】:激活您的基础 conda 环境:
conda activate base
【讨论】:
【参考方案6】:将 "
【讨论】:
【参考方案7】:当我在 anaconda 中创建一个新环境、激活它并尝试使用 pip 安装一个库时,我遇到了同样的问题。缺少的是:
conda install pip
然后一切都对我有用。
【讨论】:
【参考方案8】:激活基础,然后激活我的 Django 环境。
(Django_env) (base) C:\virtual_environment\Django_env> ,这实际上对我有用。
【讨论】:
【参考方案9】:将<Path to miniconda or anaconda>\Library\bin
文件夹添加到PATH
或cd <Path to miniconda or anaconda>\Library\bin>
【讨论】:
以上是关于“pip 配置了需要 TLS/SSL 的位置,但是 Python 中的 ssl 模块不可用”的主要内容,如果未能解决你的问题,请参考以下文章