Mercurial > repos > bcclaywell > argo_navis
view venv/lib/python2.7/site-packages/requests_toolbelt/adapters/source.py @ 0:d67268158946 draft
planemo upload commit a3f181f5f126803c654b3a66dd4e83a48f7e203b
author | bcclaywell |
---|---|
date | Mon, 12 Oct 2015 17:43:33 -0400 |
parents | |
children |
line wrap: on
line source
# -*- coding: utf-8 -*- """ requests_toolbelt.source_adapter ================================ This file contains an implementation of the SourceAddressAdapter originally demonstrated on the Requests GitHub page. """ from requests.adapters import HTTPAdapter from requests.packages.urllib3.poolmanager import PoolManager class SourceAddressAdapter(HTTPAdapter): """ A Source Address Adapter for Python Requests that enables you to choose the local address to bind to. This allows you to send your HTTP requests from a specific interface and IP address. Example usage: .. code-block:: python import requests from requests_toolbelt.adapters.source import SourceAddressAdapter s = requests.Session() s.mount('http://', SourceAddressAdapter('10.10.10.10')) """ def __init__(self, source_address, **kwargs): self.source_address = source_address super(SourceAddressAdapter, self).__init__(**kwargs) def init_poolmanager(self, connections, maxsize, block=False): self.poolmanager = PoolManager(num_pools=connections, maxsize=maxsize, block=block, source_address=self.source_address)