1

我想知道是否有人知道如何使用 ProxyConnector 作为连接器使用 aiohttp 进行连接池?

文档提到如何使用 TcpConnector 或使用 Session 类来做到这一点,但我似乎无法弄清楚。

谢谢。

4

1 回答 1

2

处理连接池的ClientSessionobject接受一个connector关键字参数:

class aiohttp.client.ClientSession(*, connector=None, loop=None, request_class=None, response_class=None, cookies=None, headers=None, auth=None)

如果没有connector给出,TCPConnector则默认使用 a,但您可以只指定一个ProxyConnector实例,然后使用该实例。你可以在源码中看到这个逻辑:

class ClientSession:

    def __init__(self, *, connector=None, loop=None, request_class=None,
                 response_class=None, cookies=None, headers=None, auth=None):
        if loop is None:
            loop = asyncio.get_event_loop()
        self._loop = loop
        self.cookies = http.cookies.SimpleCookie()
        if connector is None:
            connector = aiohttp.TCPConnector(force_close=True, loop=loop)
于 2015-04-23T16:41:03.183 回答