'Get a :class:`ConnectionPool` based on the host, port, and scheme.
If ``port`` isn\'t given, it will be derived from the ``scheme`` using
``urllib3.connectionpool.port_by_scheme``.'

def connection_from_host(self, host, port=None, scheme='http'):

    port = (port or port_by_scheme.get(scheme, 80))
    pool_key = (scheme, host, port)
    pool = self.pools.get(pool_key)
    if pool:
        return pool
    pool_cls = pool_classes_by_scheme[scheme]
    pool = pool_cls(host, port, **self.connection_pool_kw)
    self.pools[pool_key] = pool
    return pool
