Функция Python urlopen вызывает ошибку, когда в качестве входных данных указывается https-сайт.

Пожалуйста, не отмечайте вопрос как дубликат. Я использовал все возможности, но не нашел ответа. Я использую Ubuntu 12.04 (LTS)

Функция Python urlopen вызывает это сообщение об ошибке, когда в качестве входных данных указывается https-сайт:

Traceback (most recent call last):
  File "fb.py", line 13, in <module>
    htmlfile = urllib.urlopen(url)
  File "/usr/lib/python2.7/urllib.py", line 86, in urlopen
    return opener.open(url)
  File "/usr/lib/python2.7/urllib.py", line 207, in open
    return getattr(self, name)(url)
  File "/usr/lib/python2.7/urllib.py", line 436, in open_https
    h.endheaders(data)
  File "/usr/lib/python2.7/httplib.py", line 954, in endheaders
    self._send_output(message_body)
  File "/usr/lib/python2.7/httplib.py", line 814, in _send_output
    self.send(msg)
  File "/usr/lib/python2.7/httplib.py", line 776, in send
    self.connect()
  File "/usr/lib/python2.7/httplib.py", line 1161, in connect
    self.sock = ssl.wrap_socket(sock, self.key_file, self.cert_file)
  File "/usr/lib/python2.7/ssl.py", line 381, in wrap_socket
    ciphers=ciphers)
  File "/usr/lib/python2.7/ssl.py", line 143, in __init__
    self.do_handshake()
  File "/usr/lib/python2.7/ssl.py", line 305, in do_handshake
    self._sslobj.do_handshake()
IOError: [Errno socket error] [Errno 8] _ssl.c:504: EOF occurred in violation of protocol

Как это исправить?

0
задан 23 February 2014 в 20:30

1 ответ

Вы не дали свой URL, таким образом, я попробовал этот сайт.

import sys
import urllib

print sys.version

2.7.5 + (значение по умолчанию, 19 сентября 2013, 13:48:49)

[GCC 4.8.1]

print urllib.__version__

1.17

url = 'https://askubuntu.com'
res = urllib.urlopen(url)

print res.url

https://askubuntu.com /

print res.headers
Cache-Control: public, max-age=60
Content-Type: text/html; charset=utf-8
Expires: Sun, 23 Feb 2014 15:01:28 GMT
Last-Modified: Sun, 23 Feb 2014 15:00:28 GMT
Vary: *
X-Frame-Options: SAMEORIGIN
Date: Sun, 23 Feb 2014 15:00:28 GMT
Connection: close
Content-Length: 70580

, По крайней мере, на Ubuntu 13.10 я не могу воспроизвести проблему.

0
ответ дан 23 February 2014 в 20:30

Другие вопросы по тегам:

Похожие вопросы: