我使用 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 版本吗? 谢谢。
最佳答案
我假设你遇到了
AttributeError: 'module' object has no attribute 'PROTOCOL_TLSv1_2'
这是因为直到 2.7.9 才添加 TLSv1_2 。您可以使用backports.ssl 。 安装完成后,替换您的
import ssl
与
import backports.ssl as ssl
关于请求中的 Python 2.7.6 TLSv1.2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35317317/