我使用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版本吗? 感谢。
答案 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