Telethon:它在哪里存储凭据?

apa*_*ana 4 python telegram telethon

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

Lon*_*ami 6

如果您传递 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
Run Code Online (Sandbox Code Playgroud)

请注意,当前正在进行从Session到 的迁移,最终将替换(截至),尽管如果您覆盖保存和加载,这不会影响您。JsonSessionJsonSessionSessionv0.10.1