AttributeError: module 'lib' has no attribute 'X509_V_FLAG_CB_ISSUER_CHECK'
AttributeError: module 'lib' has no attribute 'X509_V_FLAG_CB_ISSUER_CHECK'
以往这种报错解决记录觉得毫无意义, 不过鉴于我问题解决比较奇葩,还是记录一下
问题
起因
python3 -m pip install --upgrade pip
这是直接报错的起点, 诱因可能是一次pyOpenSSL的降级, 原因是某个库用的是低版本, 但当时pip很正常.
报错代码
File "/usr/local/lib/python3.8/dist-packages/OpenSSL/__init__.py", line 8, in <module>
from OpenSSL import crypto, SSL
File "/usr/local/lib/python3.8/dist-packages/OpenSSL/crypto.py", line 1556, in <module>
class X509StoreFlags(object):
File "/usr/local/lib/python3.8/dist-packages/OpenSSL/crypto.py", line 1577, in X509StoreFlags
CB_ISSUER_CHECK = _lib.X509_V_FLAG_CB_ISSUER_CHECK
AttributeError: module 'lib' has no attribute 'X509_V_FLAG_CB_ISSUER_CHECK'
解决办法
下载get-pip.py
安装. 直接解决.
尝试过
- apt 强制重新安装python3-pip, 卸载重新安装, 无效.
- 下载安装pyOpenSSL最新版本, 无效.
不足之处
get-pip.py
安装没有将pip放入到环境变量目录中去, 只能 python3 -m pip
调用了.