3

我正在使用Telethon连接到电报 API,现在开发后我需要将项目 api 更改为主帐户。我想知道 Telethon 将凭据存储在哪里,以便我可以删除它们并强制重新验证?

4

1 回答 1

4

如果您将 astr作为会话名称传递,它将str.session在您运行脚本的同一目录中创建一个文件。因此,如果您将传递给TelegramClient构造函数的字符串更改为不存在的字符串,它将无法登录。同样,重命名或删除该会话也可以摆脱该会话。您不应手动删除会话文件,而应调用.log_out().

尽管与问题本身无关,但您也可以自由地重写Session该类以添加自定义.save().load()功能。这个问题显示了格式从 Pickle 更改为 JSON 的时间,并且这个问题表明了实际覆盖Session类的能力。例如:

from telethon.tl import Session

class MySession(Session):
    pass  # Override load and save as you wish here

请注意,目前正在进行从Sessionto的迁移JsonSession,最终JsonSession将替换Session(as of v0.10.1),尽管如果您覆盖保存和加载,这不会影响您。

于 2017-06-14T20:46:02.090 回答