fix ssl_version exception when urllib3 version <= 1.5

This commit is contained in:
李超 2014-07-07 20:50:44 +08:00 committed by lichao
parent e6888591eb
commit af91c78454
1 changed files with 12 additions and 4 deletions

View File

@ -2,10 +2,12 @@
https://lukasa.co.uk/2013/01/Choosing_SSL_Version_In_Requests/
https://github.com/kennethreitz/requests/pull/799
"""
from distutils.version import StrictVersion
from requests.adapters import HTTPAdapter
try:
from requests.packages.urllib3.poolmanager import PoolManager
except ImportError:
import urllib3
from urllib3.poolmanager import PoolManager
@ -16,7 +18,13 @@ class SSLAdapter(HTTPAdapter):
super(SSLAdapter, self).__init__(**kwargs)
def init_poolmanager(self, connections, maxsize, block=False):
self.poolmanager = PoolManager(num_pools=connections,
maxsize=maxsize,
block=block,
ssl_version=self.ssl_version)
urllib_ver = urllib3.__version__
if urllib3 and StrictVersion(urllib_ver) <= StrictVersion('1.5'):
self.poolmanager = PoolManager(num_pools=connections,
maxsize=maxsize,
block=block)
else:
self.poolmanager = PoolManager(num_pools=connections,
maxsize=maxsize,
block=block,
ssl_version=self.ssl_version)