Public bug reported:
The following code to retrieve a valid HTTPS URL fails under both Python
2.7 and Python2.6 (install from a PPA):
import urllib2
urllib2.urlopen('https://www1.pplweb.com').read()
Traceback (most recent call last):
File "test.py", line 2, in <module>
urllib2.urlopen('https://www1.pplweb.com').read()
File "/usr/lib/python2.7/urllib2.py", line 126, in urlopen
return _opener.open(url, data, timeout)
File "/usr/lib/python2.7/urllib2.py", line 400, in open
response = self._open(req, data)
File "/usr/lib/python2.7/urllib2.py", line 418, in _open
'_open', req)
File "/usr/lib/python2.7/urllib2.py", line 378, in _call_chain
result = func(*args)
File "/usr/lib/python2.7/urllib2.py", line 1215, in https_open
return self.do_open(httplib.HTTPSConnection, req)
File "/usr/lib/python2.7/urllib2.py", line 1177, in do_open
raise URLError(err)
urllib2.URLError: <urlopen error [Errno 1] _ssl.c:504: error:140773E8:SSL
routines:SSL23_GET_SERVER_HELLO:reason(1000)>
The same basic code also fails with Python 3.2:
from urllib.request import urlopen
urlopen('https://www1.pplweb.com').read()
Traceback (most recent call last):
File "/usr/lib/python3.2/urllib/request.py", line 1135, in do_open
h.request(req.get_method(), req.selector, req.data, headers)
File "/usr/lib/python3.2/http/client.py", line 967, in request
self._send_request(method, url, body, headers)
File "/usr/lib/python3.2/http/client.py", line 1005, in _send_request
self.endheaders(body)
File "/usr/lib/python3.2/http/client.py", line 963, in endheaders
self._send_output(message_body)
File "/usr/lib/python3.2/http/client.py", line 808, in _send_output
self.send(msg)
File "/usr/lib/python3.2/http/client.py", line 746, in send
self.connect()
File "/usr/lib/python3.2/http/client.py", line 1108, in connect
server_hostname=server_hostname)
File "/usr/lib/python3.2/ssl.py", line 189, in wrap_socket
_context=self)
File "/usr/lib/python3.2/ssl.py", line 276, in __init__
raise x
File "/usr/lib/python3.2/ssl.py", line 272, in __init__
self.do_handshake()
File "/usr/lib/python3.2/ssl.py", line 451, in do_handshake
self._sslobj.do_handshake()
ssl.SSLError: [Errno 1] _ssl.c:392: error:140773E8:SSL
routines:SSL23_GET_SERVER_HELLO:reason(1000)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "test2.py", line 2, in <module>
urlopen('https://www1.pplweb.com').read()
File "/usr/lib/python3.2/urllib/request.py", line 138, in urlopen
return opener.open(url, data, timeout)
File "/usr/lib/python3.2/urllib/request.py", line 369, in open
response = self._open(req, data)
File "/usr/lib/python3.2/urllib/request.py", line 387, in _open
'_open', req)
File "/usr/lib/python3.2/urllib/request.py", line 347, in _call_chain
result = func(*args)
File "/usr/lib/python3.2/urllib/request.py", line 1171, in https_open
context=self._context, check_hostname=self._check_hostname)
File "/usr/lib/python3.2/urllib/request.py", line 1138, in do_open
raise URLError(err)
urllib.error.URLError: <urlopen error [Errno 1] _ssl.c:392: error:140773E8:SSL
routines:SSL23_GET_SERVER_HELLO:reason(1000)>
This should return the html for the 403 error page, not an internal SSL
parsing error.
I'm running Ubuntu 12.04.
Strangely, this code runs fine under Python2.6 on Fedora 13, but returns
a "httplib.BadStatusLine: ''" error under Python2.7 on Fedora 16.
ProblemType: Bug
DistroRelease: Ubuntu 12.04
Package: python 2.7.3-0ubuntu2
ProcVersionSignature: Ubuntu 3.2.0-24.39-generic 3.2.16
Uname: Linux 3.2.0-24-generic x86_64
NonfreeKernelModules: nvidia wl
ApportVersion: 2.0.1-0ubuntu8
Architecture: amd64
Date: Tue Jun 26 10:41:49 2012
InstallationMedia: Ubuntu 11.10 "Oneiric Ocelot" - Release amd64+mac (20111012)
SourcePackage: python-defaults
UpgradeStatus: Upgraded to precise on 2012-05-10 (46 days ago)
** Affects: python-defaults (Ubuntu)
Importance: Undecided
Status: New
** Tags: amd64 apport-bug precise
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1017976
Title:
Python Urllib2 Unable to Open HTTPS URL
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/python-defaults/+bug/1017976/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs