【发布时间】:2016-07-06 17:17:35
【问题描述】:
我正在尝试使用 urllib、urllib2 或 requests 从站点获取特定数据。我使用 Python2.7。 我不断收到错误:
requests.exceptions.SSLError: [SSL: SSLV3_ALERT_HANDSHAKE_FAILURE] sslv3 alert handshake failure (_ssl.c:590)
这是我的请求代码:
import requests
r = requests.get("https://metoc.ndbc.noaa.gov/jtwc#_48_INSTANCE_0SiamlX2KcM6_=https%3A%2F%2Fmetoc.ndbc.noaa.gov%2FProductFeeds-portlet%2Fimg%2Fjtwc%2Fhtml%2Fcoop.jsp%3F")
我已经尝试了所有方法,但没有任何效果:
我尝试将验证参数设置为 false。我犯了同样的错误。 我尝试使用适配器(如其他答案中所述)以使用另一个 SSL 版本。我仍然遇到同样的错误。
任何想法可能是什么问题? 会不会是宿主锁定了访问权限,无法获取这个URL的来源?
【问题讨论】:
-
为我工作。我主要得到一堆javascript。
-
@user1919 显式设置 tls 时出现相同的 sslv3 错误?即使使用 ECDHE 加密,服务器也不接受任何 sslv3
-
也许是一个愚蠢的问题,但您确实使用 s 来提出请求?即会话对象?
-
最后一件事
openssl versionbash 输出了什么? -
它给出了这个:OpenSSL 0.9.8zh 14 Jan 2016
标签: python python-requests urllib