如何设置Python3 Telethon连接超时?
如何设置Python3 Telethon连接超时?,python,python-asyncio,telethon,Python,Python Asyncio,Telethon,我异步使用python 3 telethon库,有几个帐户和一些代理,因此我想在连接到一个帐户时设置3秒的超时时间,如果代理已失效,我尝试通过两种方式执行此操作: 设置客户端超时: self.client = TelegramClient('sessions/' + session_file, app_id, app_hash, system_version=sdk, app_version=app_version,
我异步使用python 3 telethon库,有几个帐户和一些代理,因此我想在连接到一个帐户时设置3秒的超时时间,如果代理已失效,我尝试通过两种方式执行此操作:
设置客户端超时:
self.client = TelegramClient('sessions/' + session_file, app_id, app_hash,
system_version=sdk, app_version=app_version,
device_model=device,
lang_code=lang_pack, proxy=self.proxy, timeout=3)
tasks = [asyncio.wait_for(client.connect_client(), timeout=3) for client in clients]
try:
self.clients = await asyncio.gather(*tasks)
except asyncio.TimeoutError:
print('Time out!')
except Exception as ex:
print(ex)
print()
设置协同路由超时:
self.client = TelegramClient('sessions/' + session_file, app_id, app_hash,
system_version=sdk, app_version=app_version,
device_model=device,
lang_code=lang_pack, proxy=self.proxy, timeout=3)
tasks = [asyncio.wait_for(client.connect_client(), timeout=3) for client in clients]
try:
self.clients = await asyncio.gather(*tasks)
except asyncio.TimeoutError:
print('Time out!')
except Exception as ex:
print(ex)
print()
但是这两种方法都不起作用,当我尝试连接时,如果代理不起作用,那么等待时间会比指定的超时值长得多。
我的错误是什么?您可能会受到(代理和超时不能很好地协同工作)的影响。谢谢,您能否解释一下如何应用此功能,因为我可以看到1.10.10版本仍然没有使用AIOSock?