TelegramClient 和 start() 的“with”用法是否有效?

问题描述 投票:0回答:1

我想使用上下文管理器

with
并同时将密码传递给
start()
。我认为这是可以做到的,因为在
start()
函数的文档中写道:

"""
Returns
   This `TelegramClient`, so initialization
   can be chained with ``.start()``."""

此代码按预期工作,但我在文档的电视马拉松示例中没有找到

with
start()
的类似用法。

from telethon.sync import TelegramClient

api_id = 1111111111
api_hash = 1111111111
password = 1111111111

session = 'my_session'
client = TelegramClient(session, api_id, api_hash,
                        system_version="4.16.30-vxCUSTOM")

with client.start(password=password):
    client.run_until_disconnected()
python telegram telethon
1个回答
0
投票

是的,文档只是指出

client.start
返回
client
(无论
TelegramClient
的任何实例都绑定到名称
client
)。

这意味着

client.start()
with client:
    ...

意思相同
with client.start():
    ...
© www.soinside.com 2019 - 2024. All rights reserved.