本文整理汇总了Python中requests.Session.mount方法的典型用法代码示例。如果您正苦于以下问题:Python Session.mount方法的具体用法?Python Session.mount怎么用?Python Session.mount使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类requests.Session
的用法示例。
在下文中一共展示了Session.mount方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: JoolaBaseClient
# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import mount [as 别名]
class JoolaBaseClient(object):
def __init__(self, base_url, credentials=None, api_token=None, **kwargs):
self.base_url = str(base_url)
self.session = Session()
self.session.mount('http://', CachingHTTPAdapter())
self.session.mount('https://', CachingHTTPAdapter())
if api_token:
self.session.auth = APITokenAuth(api_token)
elif credentials:
self.session.auth = credentials
def list(self):
return self.session.get(self.base_url)
def get(self, lookup):
return self.session.get('%s%s' % (self.base_url, str(lookup)))
def insert(self, **kwargs):
return self.session.post(self.base_url, data=kwargs)
def patch(self, lookup, **kwargs):
return self.session.patch('%s%s' % (self.base_url, str(lookup)), data=kwargs)
def delete(self, lookup):
return self.session.delete('%s%s' % (self.base_url, str(lookup)))
示例2: Test_IN_AP
# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import mount [as 别名]
class Test_IN_AP(unittest.TestCase):
def setUp(self):
self.session = Session()
self.adapter = Adapter()
self.session.mount('http://', self.adapter)
response_text = resource_string("parsers.test.mocks", "IN_AP.html")
self.adapter.register_uri(ANY, ANY, text=response_text)
def test_fetch_production(self):
try:
data = IN_AP.fetch_production('IN-AP', self.session)
self.assertIsNotNone(data)
self.assertEqual(data['countryCode'], 'IN-AP')
self.assertEqual(data['source'], 'core.ap.gov.in')
self.assertIsNotNone(data['datetime'])
self.assertIsNotNone(data['production'])
self.assertIsNotNone(data['storage'])
except Exception as ex:
self.fail("IN_AP.fetch_production() raised Exception: {0}".format(ex.message))
def test_fetch_consumption(self):
try:
data = IN_AP.fetch_consumption('IN-AP', self.session)
self.assertIsNotNone(data)
self.assertEqual(data['countryCode'], 'IN-AP')
self.assertEqual(data['source'], 'core.ap.gov.in')
self.assertIsNotNone(data['datetime'])
self.assertIsNotNone(data['consumption'])
except Exception as ex:
self.fail("IN_AP.fetch_consumption() raised Exception: {0}".format(ex.message))
示例3: search
# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import mount [as 别名]
def search(apn):
s = Session()
s.mount('https://', HTTPSAdapter())
url = 'https://www.acgov.org/ptax_pub_app/RealSearch.do'
data = {
'displayApn': apn,
'situsStreetNumber': '',
'situsStreetName': '',
'situsStreetSuffix': '',
'situsUnitNumber': '',
'situsCity': '',
'searchBills': 'Search',
'showHistory': 'N',
}
headers = {
'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.93 Safari/537.36',
}
s.get('https://www.acgov.org/ptax_pub_app/RealSearchInit.do?showSearchParmsFromLookup=true', headers = headers)
r = s.post(url, data = data)
try:
os.mkdir('results')
except OSError:
pass
f = open(os.path.join('results', apn), 'w')
f.write(r.text)
f.close()
示例4: test_close
# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import mount [as 别名]
def test_close(self):
cache = mock.Mock(spec=DictCache)
sess = Session()
sess.mount('http://', CacheControlAdapter(cache))
sess.close()
assert cache.close.called
示例5: testFunction
# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import mount [as 别名]
def testFunction(domain_url):
status, briefing, message, api_TXT_record = apiLookup(domain_url)
if ( status != 0 ):
status = 2
briefing = "This test was skipped because previous test "
briefing += "<strong>api_server_lookup</strong> has failed.<br/>"
new_message = briefing
new_message += "Reason:<br/>"
new_message += "<br/>" + message
return (status, briefing, new_message, None)
try:
req = Request('HEAD', "%(protocol)s://%(domain)s:%(port)s%(path)s" %api_TXT_record)
r = req.prepare()
s = Session()
s.mount('https://', SSLAdapter('TLSv1'))
if ( (s.send(r, verify=False)).ok ):
status = 0
briefing = "Connection successful to API server at "
briefing += "<strong>%(domain)s:%(port)s%(path)s</strong>" %api_TXT_record
message = briefing
return (status, briefing, message, None)
else:
raise ConnectionError()
except ConnectionError as e:
status = 1
error = "Could not connect to API server at "
error += "<strong>%(domain)s:%(port)s%(path)s</strong>." % api_TXT_record
briefing = error
message = briefing
if str(e) != "":
message += "<br/>Reason: %s" % str(e)
return (status, briefing, message, None)
except Exception as e:
status = 2
briefing = "Something odd happened while trying to connect to API server at "
briefing += "<strong>%(domain)s:%(port)s%(path)s</strong>!" % api_TXT_record
message = briefing
message += "<br/>This is the exception we got: {%s}" % str(e)
message += "<br/>It is probably a temporary issue with domain " + domain_url + "."
message += "<br/>But it could also be a bug in our Inspector."
message += " Let us know at <email> if you think so."
return (status, briefing, message, None)
示例6: from_url
# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import mount [as 别名]
def from_url(cls, url, tokenizer):
headers = {
'User-Agent': ' '.join([
'Mozilla/5.0 (X11; Linux x86_64)',
'AppleWebKit/537.11 (KHTML, like Gecko)',
'Chrome/23.0.1271.64 Safari/537.11'
]),
'Accept': ','.join([
'text/html', 'application/xhtml+xml', 'application/xml;q=0.9',
'*/*;q=0.8'
]),
'Accept-Charset': 'ISO-8859-1,utf-8;q=0.7,*;q=0.3',
'Accept-Encoding': 'none',
'Accept-Language': 'en-US,en;q=0.8',
'Connection': 'keep-alive'
}
session = Session()
session.mount('http://', HTTPAdapter(max_retries=2))
session.mount('https://', HTTPAdapter(max_retries=2))
cookies = CookieJar()
request = Request(method='GET',
url=url,
headers=headers,
cookies=cookies)
prepare = session.prepare_request(request)
response = session.send(prepare, verify=True)
if response.status_code != requests.codes.ok:
response.raise_for_status()
return cls(response.text, tokenizer, url)
示例7: prepare_and_send_request
# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import mount [as 别名]
def prepare_and_send_request(request_method, request_url, payload=None, authorization=None):
headers = {
'Accept' : 'application/json',
'Accept-Encoding' : 'gzip,deflate,sdch',
'Accept-Language' : 'en-US,en;q=0.8,pt-BR;q=0.6,pt;q=0.4',
'Cache-Control' : 'no-cache',
'Connection' : 'keep-alive',
}
if ( authorization != None ):
headers['Authorization'] = "Basic " + base64.b64encode("%s:%s" % (authorization, TEST_USER_PASSWORD))
if ( payload == None ):
req = Request(request_method, request_url, headers=headers)
r = req.prepare()
else:
headers['Content-Type'] = 'application/json'
req = Request(request_method, request_url, data=json.dumps(payload), headers=headers)
r = req.prepare()
s = Session()
s.mount('https://', SSLAdapter('TLSv1'))
try:
resp = s.send(r, verify=False, timeout=1)
except Timeout, SSLError:
return prepare_and_send_request(request_method, request_url, payload, authorization)
示例8: send_request
# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import mount [as 别名]
def send_request(method, url, payload=None, headers=None, client=None):
if ( client == None ):
s = Session()
s.mount('https://', SSLAdapter('TLSv1'))
elif ( clients.get(client, False) ):
s = clients[client]
else:
s = Session()
s.mount('https://', SSLAdapter('TLSv1'))
clients[client] = s
if ( payload == None ):
request = Request(method, url, headers=headers)
r = s.prepare_request(request)
else:
if ( headers == None ):
headers = {}
request = Request(method, url,
data=json.dumps(payload), headers=headers)
r = s.prepare_request(request)
try:
response = s.send(r, verify=False, timeout=1)
except Timeout, SSLError:
return send_request(method, url, payload, client)
示例9: Requester
# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import mount [as 别名]
class Requester(object):
def __init__(self):
self.headers = {
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:41.0) Gecko/20100101 Firefox/41.0'
}
self.session = Session()
self.session.headers.update(self.headers)
max_retries_adapter = adapters.HTTPAdapter(max_retries=5)
self.session.mount('http://', max_retries_adapter)
self.session.mount('https://', max_retries_adapter)
def get(self, url):
return self.session.get(url)
def post(self, url, data):
return self.session.post(url, data)
def post_json(self, url, data):
return self.session.post(url, json=data)
def post_file(self, url, file_name):
files = {
'file': open(file_name, 'rb'),
}
return self.session.post(url, files=files)
示例10: hit_example_com
# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import mount [as 别名]
def hit_example_com(self):
try:
start_time = time()
session = Session()
http_adapter = HTTPAdapter(max_retries=0)
session.mount('http://', http_adapter)
session.mount('https://', http_adapter)
session.get("http://www.example.com", timeout=30)
# # print("Doing a task that is not a request...")
# login = Login()
# r = login.sw_valid_login(GC.USERNAME, GC.PASSWORD, "http://www.sowatest.com")
stats_latency['latency'].append(time() - start_time)
events.request_success.fire(request_type="Transaction", name="hit_sowatest", response_time=time() - start_time, response_length=0)
session.close()
# # Assert Section
# assert r.status_code == 200
# assert "Access Denied" in str(html.fromstring(r.text).xpath("//title/text()"))
# assert '<div id="blockedBanner">' in r.text
except Exception, e:
"""
* *request_type*: Request type method used
* *name*: Path to the URL that was called (or override name if it was used in the call to the client)
* *response_time*: Time in milliseconds until exception was thrown
* *exception*: Exception instance that was thrown
"""
events.request_failure.fire(request_type="Transaction", name="hit_sowatest", response_time=time() - start_time, exception=e)
示例11: test_replaces_all_adapters
# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import mount [as 别名]
def test_replaces_all_adapters(self):
mount_point = 'fake_protocol://'
s = Session()
s.mount(mount_point, HTTPAdapter())
with Betamax(s):
adapter = s.adapters.get(mount_point)
assert adapter is not None
assert isinstance(adapter, BetamaxAdapter)
示例12: sess
# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import mount [as 别名]
def sess(self, url):
self.url = url
self.cache = DictCache()
sess = Session()
sess.mount(
"http://", CacheControlAdapter(self.cache, serializer=NullSerializer())
)
return sess
示例13: sess
# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import mount [as 别名]
def sess(self, chunking_server):
self.url = chunking_server.base_url
self.cache = DictCache()
sess = Session()
sess.mount(
'http://',
CacheControlAdapter(self.cache, serializer=NullSerializer()),
)
return sess
示例14: sess
# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import mount [as 别名]
def sess(self, server):
self.url = server.application_url
self.cache = DictCache()
sess = Session()
sess.mount(
'http://',
CacheControlAdapter(self.cache, serializer=NullSerializer()),
)
return sess
示例15: testFunction
# 需要导入模块: from requests import Session [as 别名]
# 或者: from requests.Session import mount [as 别名]
def testFunction(domain_url):
status, briefing, message, api_TXT_record = apiLookup(domain_url)
if ( status != 0 ):
status = 2
briefing = "This test was skipped because previous test "
briefing += "<strong>api_server_lookup</strong> has failed.<br/>"
new_message = briefing
new_message += "Reason:<br/>"
new_message += "<br/>" + message
return (status, briefing, new_message, None)
try:
req = Request('HEAD', "%(protocol)s://%(domain)s:%(port)s%(path)s/scripts/buddycloud.js" %api_TXT_record)
r = req.prepare()
s = Session()
s.mount('https://', SSLAdapter('TLSv1'))
if ( (s.send(r, verify=False, timeout=1)).ok ):
status = 0
briefing = "Websocket interface for realtime connections available at: <a href=\"%(protocol)s://%(domain)s:%(port)s%(path)s/scripts/buddycloud.js\" target=\"_blank\"><strong>%(protocol)s://%(domain)s:%(port)s%(path)s/scripts/buddycloud.js</strong></a>"%api_TXT_record
message = briefing
return (status, briefing, message, None)
else:
raise ConnectionError()
except ConnectionError as e:
status = 1
error = "Could not retrieve the websocket interface for realtime connections, which should be located at <strong>%(domain)s:%(port)s%(path)s/scripts/buddycloud.js</strong>!" % api_TXT_record
briefing = error
message = briefing
if str(e) != "":
message += "<br/>Reason: %s" % str(e)
return (status, briefing, message, None)
except Exception as e:
status = 2
briefing = "Something odd happened while trying to retrieve the websocket interface for realtime connections, which should be located at "
briefing += "<strong>%(domain)s:%(port)s%(path)s/scripts/buddycloud.js</strong>!" % api_TXT_record
message = briefing
message += "<br/>This is the exception we got: {%s}" % str(e)
message += "<br/>It is probably a temporary issue with domain " + domain_url + "."
message += "<br/>But it could also be a bug in our Inspector."
message += " Let us know at <a href='https://github.com/buddycloud/buddycloud-tests-framework/issues'>our issue tracker</a> if you think so."
return (status, briefing, message, None)