为什么在 python3 中尝试导入 ssl 时出现错误?
Python 3.7.4 (default, Jul 9 2019, 18:13:23)
[Clang 10.0.1 (clang-1001.0.46.4)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import ssl
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/Cellar/python/3.7.4/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ssl.py", line 98, in <module>
import _ssl # if we can't import it, let the error propagate
ImportError: dlopen(/usr/local/Cellar/python/3.7.4/Frameworks/Python.framework/Versions/3.7/lib/python3.7/lib-dynload/_ssl.cpython-37m-darwin.so, 2): Library not loaded: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib
Referenced from: /usr/local/Cellar/python/3.7.4/Frameworks/Python.framework/Versions/3.7/lib/python3.7/lib-dynload/_ssl.cpython-37m-darwin.so
Reason: image not found
Run Code Online (Sandbox Code Playgroud)
我很难通过 pip 安装软件包,这似乎引发了 SSL 错误。
Bar*_*ard 13
我遇到了完全相同的问题,一旦我使用 brew 将我的 Python 版本升级到 3.7.6,这个问题就解决了。
brew upgrade python3
Run Code Online (Sandbox Code Playgroud)
这引发了一个权限被拒绝错误,但更新还是完成了,之后我就可以导入 ssl:
Python 3.7.6 (default, Dec 30 2019, 19:38:28)
[Clang 11.0.0 (clang-1100.0.33.16)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import ssl
>>> ssl
<module 'ssl' from '/usr/local/Cellar/python/3.7.6_1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ssl.py'>
>>>
Run Code Online (Sandbox Code Playgroud)
使用自制软件在 osx 上为我修复的是切换到旧版本的 openssl:
brew switch openssl 1.0.2s
Run Code Online (Sandbox Code Playgroud)
请参阅此SO 文章
| 归档时间: |
|
| 查看次数: |
4945 次 |
| 最近记录: |