请求中的Python 2.7.6 TLSv1.2

时间:2016-02-10 14:03:29

标签: python python-requests tls1.2

我使用python版本2.7.6并需要使用TLSv1.2发出请求。 我尝试过这样的东西来指定tls的版本:

class SslAdapter():
def init_poolmanager(self, connections, maxsize, block=False):
    self.poolmanager = PoolManager(num_pools=connections,
                                   maxsize=maxsize,
                                   block=block,
                                   ssl_version=ssl.PROTOCOL_TLSv1_2)
s=requests.Session() 
s.mount('https://', SslAdapter())
s.get('https://google.com',verify=False)

但是在调试器中,我看到请求中的TLS版本是TLSv1.0。 你能建议如何正确指定TLS版本吗? 感谢。

1 个答案:

答案 0 :(得分:2)

我假设你遇到了

AttributeError: 'module' object has no attribute 'PROTOCOL_TLSv1_2'

这是因为在2.7.9之前没有添加TLSv1_2。您可以使用backports.ssl。 安装完毕后,替换

import ssl

import backports.ssl as ssl