web-dev-qa-db-ja.com

Python "pip install"はAttributeErrorで失敗します: 'module'オブジェクトに属性 'SSL_ST_INIT'がありません

$ Sudo pip install --upgrade pyOpenSSL

Traceback (most recent call last):
  File "/usr/local/bin/pip", line 9, in <module>
load_entry_point('pip==8.1.1', 'console_scripts', 'pip')()
File "/usr/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 558, 
in load_entry_point
return get_distribution(dist).load_entry_point(group, name)
File "/usr/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 
2682, in load_entry_point
return ep.load()
File "/usr/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 
2355, in load
return self.resolve()
File "/usr/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 
2361, in resolve
 module = __import__(self.module_name, fromlist=['__name__'], level=0)
File "/usr/local/lib/python2.7/dist-packages/pip-8.1.1-
 py2.7.Egg/pip/__init__.py", line 16, in <module>
from pip.vcs import git, Mercurial, Subversion, Bazaar  # noqa
 File "/usr/local/lib/python2.7/dist-packages/pip-8.1.1-
 py2.7.Egg/pip/vcs/Mercurial.py", line 9, in <module>
from pip.download import path_to_url
File "/usr/local/lib/python2.7/dist-packages/pip-8.1.1-
py2.7.Egg/pip/download.py", line 39, in <module>
from pip._vendor import requests, six
File "/usr/local/lib/python2.7/dist-packages/pip-8.1.1-
py2.7.Egg/pip/_vendor/requests/__init__.py", line 53, in <module>
from .packages.urllib3.contrib import pyopenssl
File "/usr/local/lib/python2.7/dist-packages/pip-8.1.1-
  py2.7.Egg/pip/_vendor/requests/packages/urllib3/contrib/pyopenssl.py", 
line 
54, in <module>
 import OpenSSL.SSL
   File "/usr/lib/python2.7/dist-packages/OpenSSL/__init__.py", line 8, in 
  <module>
    from OpenSSL import Rand, crypto, SSL
    File "/usr/lib/python2.7/dist-packages/OpenSSL/SSL.py", line 118, in 
<module>
 SSL_ST_INIT = _lib.SSL_ST_INIT
AttributeError: 'module' object has no attribute 'SSL_ST_INIT'

「pip uninstall pyopenssl」をアンインストールできません

Pipを使用すると、このエラーが発生します。

前もって感謝します。

追加の詳細:

使ってます

ディストリビューターID:Ubuntu説明:Ubuntu 15.10リリース:15.10コードネーム:wily

53
May

私もこの問題に遭遇しました。 pipも壊れているため、pipを実行するように提案されたソリューションは機能しません!私はこれが私のためにそれを解決したことがわかりました:

Sudo python -m easy_install --upgrade pyOpenSSL

これにより、バージョン17.3.0がインストールされました(xenialのpython-opensslストックバージョン)。バージョンの大幅な変更に注意してください。それ以降のバージョンでは、先頭の0が削除される可能性があります。

とにかく、その後、pipとansibleは再び機能し始めました。

98
delimiter

私はエラーを修正するように見える次のことをしましたが、それが正しい方法であるかどうかはわかりませんが、私のマシンでエラーを修正しました:

最初に以下のディレクトリをバックアップしました。同じことをお勧めします。

rm -rf /usr/lib/python2.7/dist-packages/OpenSSL
rm -rf /usr/lib/python2.7/dist-packages/pyOpenSSL-0.15.1.Egg-info
Sudo pip install pyopenssl

Pipを実行するたびに同じエラーが発生したため、アンインストールできませんでした: 'module'オブジェクトには属性 'SSL_ST_INIT'がありません。

上記の後に、私のpipが動作するようになり、さらに重要なことに、私のansibleが動作するようになりました(以前の更新で壊れました)。

それがあなたのシステムで動作するかどうかは定かではありませんし、私がやったように、帯域外のものを取り除くことはせいぜいリスクがあります。

92
Severun