【问题标题】:Python 2.6.6 When I get html Source from Website It gives ErrorPython 2.6.6 当我从网站获取 html 源代码时出现错误
【发布时间】:2018-08-29 05:10:41
【问题描述】:

Python 2.6.6 当我得到HTML 来自网站的来源时,它给出了错误,但它适用于 3 版本

import urllib
link='https://www.bookabach.co.nz/baches-and-holiday-homes/view/38781/'
f=urllib.urlopen(link)

错误为:

Traceback(最近一次调用最后一次):
文件“”,第 1 行, 在
f=urllib.urlopen(link)
文件“E:\Python26\lib\urllib.py”,第 86 行,在 urlopen
返回 opener.open(url)
打开文件“E:\Python26\lib\urllib.py”,第 207 行
return getattr(self, name)(url)
文件“E:\Python26\lib\urllib.py”,第 441 行,在 open_https
h.endheaders()
文件“E:\Python26\lib\httplib.py”,第 908 行,在 endheaders
self._send_output()
_send_output 中的文件“E:\Python26\lib\httplib.py”,第 780 行
self.send(msg)
文件“E:\Python26\lib\httplib.py”,第 739 行,在发送中
self.connect()
文件“E:\Python26\lib\httplib.py”,第 1116 行,在连接中
self.sock = ssl.wrap_socket(sock, self.key_file, self.cert_file)
文件“E:\Python26\lib\ssl.py”,第 338 行,在 wrap_socket
suppress_ragged_eofs=suppress_ragged_eofs)
文件“E:\Python26\lib\ssl.py”,第 120 行,在 init
self.do_handshake()
文件“E:\Python26\lib\ssl.py”,第 279 行,在 do_handshake
self._sslobj.do_handshake()
IOError: [Errno 套接字错误] [Errno 1] _ssl.c:490: error:1407742E:SSL 例程:SSL23_GET_SERVER_HELLO:tlsv1 警报协议版本

【问题讨论】:

  • 首先,出于好奇,为什么会有这么早版本的python?另外,为什么不直接使用 requests 库呢?
  • 因为我在linux专用服务器上运行脚本,python版本是2.6.6。
  • Requests 库应该能够在 2.6.6 上运行。该网站说 Python >=2.6

标签: python-2.7


【解决方案1】:

当您尝试通过 HTTPS 访问该站点时,您可能只需要禁用 SSL 验证。

使用 urllib 解决了here 的类似问题。

【讨论】:

    猜你喜欢
    • 2012-11-28
    • 2015-12-22
    • 2020-10-05
    • 1970-01-01
    • 2018-12-27
    • 2015-04-03
    • 1970-01-01
    • 2020-10-02
    • 1970-01-01
    相关资源
    最近更新 更多