我正在使用Telethon连接到电报 API,现在开发后我需要将项目 api 更改为主帐户。我想知道 Telethon 将凭据存储在哪里,以便我可以删除它们并强制重新验证?
问问题
1135 次
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
请注意,目前正在进行从Session
to的迁移JsonSession
,最终JsonSession
将替换Session
(as of v0.10.1
),尽管如果您覆盖保存和加载,这不会影响您。
于 2017-06-14T20:46:02.090 回答