尝试使用 pip 安装 Django 时出错
Error trying to install Django with pip
当我在 OSX 中执行 "pip install django" 时出现以下错误...
Downloading/unpacking django
Error <urlopen error [Errno 1] _ssl.c:504: error:0D0890A1:asn1 encoding routines:ASN1_verify:unknown message digest algorithm> while getting https://pypi.python.org/packages/source/D/Django/Django-1.8.1.tar.gz#md5=0f0a677a2cd56b9ab7ccb1c562d70f53 (from https://pypi.python.org/simple/django/)
Cleaning up...
Exception:
Traceback (most recent call last):
File "/Users/garylewis/anaconda/lib/python2.7/site-packages/pip/basecommand.py", line 134, in main
status = self.run(options, args)
File "/Users/garylewis/anaconda/lib/python2.7/site-packages/pip/commands/install.py", line 236, in run
requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle)
File "/Users/garylewis/anaconda/lib/python2.7/site-packages/pip/req.py", line 1092, in prepare_files
self.unpack_url(url, location, self.is_download)
File "/Users/garylewis/anaconda/lib/python2.7/site-packages/pip/req.py", line 1238, in unpack_url
retval = unpack_http_url(link, location, self.download_cache, self.download_dir)
File "/Users/garylewis/anaconda/lib/python2.7/site-packages/pip/download.py", line 602, in unpack_http_url
resp = _get_response_from_url(target_url, link)
File "/Users/garylewis/anaconda/lib/python2.7/site-packages/pip/download.py", line 638, in _get_response_from_url
resp = urlopen(target_url)
File "/Users/garylewis/anaconda/lib/python2.7/site-packages/pip/download.py", line 176, in __call__
response = self.get_opener(scheme=scheme).open(url)
File "/Users/garylewis/anaconda/lib/python2.7/urllib2.py", line 404, in open
response = self._open(req, data)
File "/Users/garylewis/anaconda/lib/python2.7/urllib2.py", line 422, in _open
'_open', req)
File "/Users/garylewis/anaconda/lib/python2.7/urllib2.py", line 382, in _call_chain
result = func(*args)
File "/Users/garylewis/anaconda/lib/python2.7/site-packages/pip/download.py", line 155, in https_open
return self.do_open(self.specialized_conn_class, req)
File "/Users/garylewis/anaconda/lib/python2.7/urllib2.py", line 1184, in do_open
raise URLError(err)
URLError: <urlopen error [Errno 1] _ssl.c:504: error:0D0890A1:asn1 encoding routines:ASN1_verify:unknown message digest algorithm>
Storing complete log in /var/folders/tv/mxmczdzd00bb3z5zkm6q1l400000gn/T/tmpYaAhkf
如何解决这个问题并安装 Django?我认为这可能是 pip 本身的问题。我似乎记得过去无法用它安装其他 Python 东西。
错误似乎与 SSL Python 的证书有关,如 here 所述。由于 Heartbleed 已知错误而更新的证书。您需要 update/reinstall 您的 Python.
我搜索了这个问题,找到了这个问题。但我发现这个问题没有解决方案。我分享我的解决方案如下:
如问题所示,使用anaconda。请尝试使用 conda 安装。如果return HTTP 403,你的问题跟我一样。我认为原因在于旧的 anaconda 版本。
我通过卸载 anaconda 并重新安装来解决这个问题。我的系统是macOS。
当我在 OSX 中执行 "pip install django" 时出现以下错误...
Downloading/unpacking django
Error <urlopen error [Errno 1] _ssl.c:504: error:0D0890A1:asn1 encoding routines:ASN1_verify:unknown message digest algorithm> while getting https://pypi.python.org/packages/source/D/Django/Django-1.8.1.tar.gz#md5=0f0a677a2cd56b9ab7ccb1c562d70f53 (from https://pypi.python.org/simple/django/)
Cleaning up...
Exception:
Traceback (most recent call last):
File "/Users/garylewis/anaconda/lib/python2.7/site-packages/pip/basecommand.py", line 134, in main
status = self.run(options, args)
File "/Users/garylewis/anaconda/lib/python2.7/site-packages/pip/commands/install.py", line 236, in run
requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle)
File "/Users/garylewis/anaconda/lib/python2.7/site-packages/pip/req.py", line 1092, in prepare_files
self.unpack_url(url, location, self.is_download)
File "/Users/garylewis/anaconda/lib/python2.7/site-packages/pip/req.py", line 1238, in unpack_url
retval = unpack_http_url(link, location, self.download_cache, self.download_dir)
File "/Users/garylewis/anaconda/lib/python2.7/site-packages/pip/download.py", line 602, in unpack_http_url
resp = _get_response_from_url(target_url, link)
File "/Users/garylewis/anaconda/lib/python2.7/site-packages/pip/download.py", line 638, in _get_response_from_url
resp = urlopen(target_url)
File "/Users/garylewis/anaconda/lib/python2.7/site-packages/pip/download.py", line 176, in __call__
response = self.get_opener(scheme=scheme).open(url)
File "/Users/garylewis/anaconda/lib/python2.7/urllib2.py", line 404, in open
response = self._open(req, data)
File "/Users/garylewis/anaconda/lib/python2.7/urllib2.py", line 422, in _open
'_open', req)
File "/Users/garylewis/anaconda/lib/python2.7/urllib2.py", line 382, in _call_chain
result = func(*args)
File "/Users/garylewis/anaconda/lib/python2.7/site-packages/pip/download.py", line 155, in https_open
return self.do_open(self.specialized_conn_class, req)
File "/Users/garylewis/anaconda/lib/python2.7/urllib2.py", line 1184, in do_open
raise URLError(err)
URLError: <urlopen error [Errno 1] _ssl.c:504: error:0D0890A1:asn1 encoding routines:ASN1_verify:unknown message digest algorithm>
Storing complete log in /var/folders/tv/mxmczdzd00bb3z5zkm6q1l400000gn/T/tmpYaAhkf
如何解决这个问题并安装 Django?我认为这可能是 pip 本身的问题。我似乎记得过去无法用它安装其他 Python 东西。
错误似乎与 SSL Python 的证书有关,如 here 所述。由于 Heartbleed 已知错误而更新的证书。您需要 update/reinstall 您的 Python.
我搜索了这个问题,找到了这个问题。但我发现这个问题没有解决方案。我分享我的解决方案如下:
如问题所示,使用anaconda。请尝试使用 conda 安装。如果return HTTP 403,你的问题跟我一样。我认为原因在于旧的 anaconda 版本。
我通过卸载 anaconda 并重新安装来解决这个问题。我的系统是macOS。