对 "pyOpenSSL" 模块未被确认感到沮丧
Frustrated with "pyOpenSSL" module not be acknowledged
环境:OS X BigSur 11.2.2; MacBook Pro 英特尔
我正在尝试让 pyOpenSSL 在 Python3 环境中工作。我一直致力于从使用 Py2 转换为 Py3。我可以轻松地在 Python2 中完成这项工作;但出于显而易见的原因,我真的需要下车 Python2。
在我的 python 脚本中,我只有以下命令:“导入 pyOpenSSL”。我也尝试过“导入 OpenSSL”和“导入密码学”,所有这些也会产生类似的“No module named ...”错误。无论语法、拼写还是大小写,都不起作用。
经过以下所有尝试,安装成功;我用“pip3 list”进行了验证。
我试过:
- 直接安装到系统中Python - 不行。
- 安装了 pyenv 并安装了 Python 3.8.7 并使用 pip3 安装 pyOpenSSL - 不行。
- 安装了 virtualenvwrapper 并创建了一个虚拟环境,安装在那里,还是不行。
我什至在 python 中验证了该模块是使用以下命令安装的:
import pkg_resources
installed_packages = pkg_resources.working_set
installed_packages_list = sorted(["%s==%s" % (i.key, i.version)
for i in installed_packages])
print(installed_packages_list)
['appdirs==1.4.4', 'cffi==1.14.5', 'cryptography==3.4.6', 'distlib==0.3.1', 'filelock==3.0.12', 'pbr==5.5.1', 'pip==21.0.1', 'pycparser==2.20', 'pyopenssl==19.1.0', 'setuptools==49.2.1', 'six==1.15.0', 'stevedore==3.3.0', 'virtualenv-clone==0.5.4', 'virtualenv==20.4.2', 'virtualenvwrapper==4.8.4']
即使使用非 pip,也显示至少安装了“openSSL”。
>>> help("modules")
Please wait a moment while I gather a list of all available modules...
/Users/jewettg/.pyenv/versions/3.8.7/lib/python3.8/site-packages/setuptools/distutils_patch.py:25: UserWarning: Distutils was imported before Setuptools. This usage is discouraged and may exhibit undesirable behaviors or errors. Please use Setuptools' objects directly or at least import Setuptools first.
warnings.warn(
OpenSSL _thread functools resource
__future__ _threading_local gc rlcompleter
_abc _tkinter genericpath runpy
_ast _tracemalloc getopt sched
_asyncio _uuid getpass secrets
_bisect _warnings gettext select
_blake2 _weakref glob selectors
_bootlocale _weakrefset grp setuptools
_bz2 _xxsubinterpreters gzip shelve
_cffi_backend _xxtestfuzz hashlib shlex
_codecs abc heapq shutil
我不知道我做错了什么!求助!?
我无法告诉您有关 pyenv 或其他管理器的信息,但是 conda
很少让我失望。我已经验证我可以从一个干净的 conda
env w/ python3.8 安装这个库并导入它:
(base) $ conda create python=3.8 -n pyssl
...
(base) $ conda activate pyssl
(pyssl) $ pip install pyopenssl
...
Successfully installed cffi-1.14.5 cryptography-3.4.6 pycparser-2.20 pyopenssl-20.0.1 six-1.15.0
(pyssl) $ python
Python 3.8.8 (default, Feb 24 2021, 21:46:12)
[GCC 7.3.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import OpenSSL
>>>
所以您几乎肯定会想要 import OpenSSL
。我在 Windows,但使用的是 WSL2。不过,None 应该很重要。
通常当这些问题发生时,是因为你已经将库安装到一个 Python 解释器,但不小心调用了一个 不同的 解释器(你没有安装lib) 当你实际上 运行.
环境:OS X BigSur 11.2.2; MacBook Pro 英特尔
我正在尝试让 pyOpenSSL 在 Python3 环境中工作。我一直致力于从使用 Py2 转换为 Py3。我可以轻松地在 Python2 中完成这项工作;但出于显而易见的原因,我真的需要下车 Python2。
在我的 python 脚本中,我只有以下命令:“导入 pyOpenSSL”。我也尝试过“导入 OpenSSL”和“导入密码学”,所有这些也会产生类似的“No module named ...”错误。无论语法、拼写还是大小写,都不起作用。
经过以下所有尝试,安装成功;我用“pip3 list”进行了验证。
我试过:
- 直接安装到系统中Python - 不行。
- 安装了 pyenv 并安装了 Python 3.8.7 并使用 pip3 安装 pyOpenSSL - 不行。
- 安装了 virtualenvwrapper 并创建了一个虚拟环境,安装在那里,还是不行。
我什至在 python 中验证了该模块是使用以下命令安装的:
import pkg_resources
installed_packages = pkg_resources.working_set
installed_packages_list = sorted(["%s==%s" % (i.key, i.version)
for i in installed_packages])
print(installed_packages_list)
['appdirs==1.4.4', 'cffi==1.14.5', 'cryptography==3.4.6', 'distlib==0.3.1', 'filelock==3.0.12', 'pbr==5.5.1', 'pip==21.0.1', 'pycparser==2.20', 'pyopenssl==19.1.0', 'setuptools==49.2.1', 'six==1.15.0', 'stevedore==3.3.0', 'virtualenv-clone==0.5.4', 'virtualenv==20.4.2', 'virtualenvwrapper==4.8.4']
即使使用非 pip,也显示至少安装了“openSSL”。
>>> help("modules")
Please wait a moment while I gather a list of all available modules...
/Users/jewettg/.pyenv/versions/3.8.7/lib/python3.8/site-packages/setuptools/distutils_patch.py:25: UserWarning: Distutils was imported before Setuptools. This usage is discouraged and may exhibit undesirable behaviors or errors. Please use Setuptools' objects directly or at least import Setuptools first.
warnings.warn(
OpenSSL _thread functools resource
__future__ _threading_local gc rlcompleter
_abc _tkinter genericpath runpy
_ast _tracemalloc getopt sched
_asyncio _uuid getpass secrets
_bisect _warnings gettext select
_blake2 _weakref glob selectors
_bootlocale _weakrefset grp setuptools
_bz2 _xxsubinterpreters gzip shelve
_cffi_backend _xxtestfuzz hashlib shlex
_codecs abc heapq shutil
我不知道我做错了什么!求助!?
我无法告诉您有关 pyenv 或其他管理器的信息,但是 conda
很少让我失望。我已经验证我可以从一个干净的 conda
env w/ python3.8 安装这个库并导入它:
(base) $ conda create python=3.8 -n pyssl
...
(base) $ conda activate pyssl
(pyssl) $ pip install pyopenssl
...
Successfully installed cffi-1.14.5 cryptography-3.4.6 pycparser-2.20 pyopenssl-20.0.1 six-1.15.0
(pyssl) $ python
Python 3.8.8 (default, Feb 24 2021, 21:46:12)
[GCC 7.3.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import OpenSSL
>>>
所以您几乎肯定会想要 import OpenSSL
。我在 Windows,但使用的是 WSL2。不过,None 应该很重要。
通常当这些问题发生时,是因为你已经将库安装到一个 Python 解释器,但不小心调用了一个 不同的 解释器(你没有安装lib) 当你实际上 运行.