Telethon:它在哪里存储凭证?

时间:2017-06-13 03:36:01

标签: python telegram telethon

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

1 个答案:

答案 0 :(得分:4)

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

虽然与问题本身无关,但您也可以自由覆盖Session类来添加自定义.save().load()功能。 This issue显示格式从Pickle更改为JSON时,this one建议实际覆盖Session类的能力。例如:

from telethon.tl import Session

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

请注意,目前正在进行从SessionJsonSession的迁移,最终JsonSession将取代Session(截至v0.10.1),尽管如果您覆盖保存并加载,这不应该影响您。