【发布时间】:2014-01-08 09:29:41
【问题描述】:
使用 pip 安装 python 包时遇到 HTTPSHandler 错误,以下是堆栈跟踪,
--------desktop:~$ pip install Django==1.3
Traceback (most recent call last):
File "/home/env/.genv/bin/pip", line 9, in <module>
load_entry_point('pip==1.4.1', 'console_scripts', 'pip')()
File "/home/env/.genv/lib/python2.7/site-packages/pkg_resources.py", line 378, in load_entry_point
return get_distribution(dist).load_entry_point(group, name)
File "/home/env/.genv/lib/python2.7/site-packages/pkg_resources.py", line 2566, in load_entry_point
return ep.load()
File "/home/env/.genv/lib/python2.7/site-packages/pkg_resources.py", line 2260, in load
entry = __import__(self.module_name, globals(),globals(), ['__name__'])
File "/home/env/.genv/lib/python2.7/site-packages/pip/__init__.py", line 10, in <module>
from pip.util import get_installed_distributions, get_prog
File "/home/env/.genv/lib/python2.7/site-packages/pip/util.py", line 17, in <module>
from pip.vendor.distlib import version
File "/home/env/.genv/lib/python2.7/site-packages/pip/vendor/distlib/version.py", line 13, in <module>
from .compat import string_types
File "/home/env/.genv/lib/python2.7/site-packages/pip/vendor/distlib/compat.py", line 31, in <module>
from urllib2 import (Request, urlopen, URLError, HTTPError,
ImportError: cannot import name HTTPSHandler
我曾经编辑 Modules/setup.dist 文件并取消注释 SSL 代码行并重建它,参考以下线程:http://forums.opensuse.org/english/get-technical-help-here/applications/488962-opensuse-python-openssl-2.html
【问题讨论】:
-
你是如何安装python的?你能在 python shell 中
import ssl或import _ssl吗? -
你在什么系统上?
-
我做了./configure,make,sudo make altinstall,然后添加了带有虚拟环境的python2.7;但是在执行 pip 时,它会返回相同的错误。导入 ssl“ImportError:没有名为 _ssl 的模块”。还使用 --with-ssl 并通过在可下载的 Modules/Setup.dist 中取消注释 ssl 行再次重建。
-
Ubuntu 10.04 和 i5 3330 64 位架构
-
在 OS X 上遇到同样的错误。有人知道如何在 Mac 上解决这个问题吗?