URLError:<urlopen error =“”[ssl:=“”tlsv1_alert_protocol_version] =“”tlsv1 =“”alert =“”protocol =“”version =“”(_ssl.c:661)=“”>

时间:2018-03-28 23:49:10

标签: python ssl

我在标题

中收到错误

我有python 2.7.14和OpenSSL 1.0.2k 2017年1月26日

ctx = ssl.SSLContext(ssl.PROTOCOL_TLS) #Itried all the other protocols
ctx.check_hostname = False #fails with or without these 2 lines
ctx.verify_mode = ssl.CERT_NONE
resp = urllib2.urlopen(url, context=ctx).read()

更新: 这是url(敏感数据替换为..) https://www.upwork.com/api/hr/v2/teams/../users.json?oauth_consumer_key=..&oauth_nonce=..&oauth_signature_method=HMAC-SHA1&oauth_timestamp=..&oauth_token=..&oauth_version=1.0&tz=gmt&oauth_signature= ..

所有密钥和令牌都有效,因为我也在javscript平台上使用它们,并且它们在那里工作得很好。 还可以简单地粘贴浏览器中的链接。 但是在python中我不知道如何调试它。有人可以帮忙吗?谢谢你,非常感谢

1 个答案:

答案 0 :(得分:1)

  

ctx = ssl.SSLContext(ssl.PROTOCOL_TLS)#Itried所有其他协议

没有ssl.PROTOCOL_TLS。例如ssl.PROTOCOL_TLSv1不起作用,ssl.PROTOCOL_TLSv1_2对我有效。更好地使用ssl.create_default_context()