2

我可以在Telethon 代码中看到以下导入,但在 Telethon github 存储库中找不到 GetDialogsRequest 和下面提到的其他函数。这些功能在哪里?他们不是电视节目项目的一部分,我应该去别处看看吗?我在 tl 文件夹中看不到任何“功能”模块。

from .tl.functions.messages import (
    GetDialogsRequest, GetHistoryRequest, ReadHistoryRequest, SendMediaRequest,
    SendMessageRequest)
4

1 回答 1

3

它们Telethon 项目的一部分。在内部,该telethon部分被省略(因此人们可能会重命名包),但完整的导入通常是:

from telethon.tl.functions.messages import GetDialogsRequest

您可以随时参考在线文档。每个请求或构造函数都有一个按钮,可以将from foo import bar行直接复制到剪贴板。

请注意,生成的代码不在存储库中,因为它们有很多文件,我决定将它们排除在外git以避免庞大的存储库。相反,它是在您通过执行克隆存储库时生成python3 tl_generator.py的。tl_generator.py获取telethon_generator/scheme.tl文件并在telethon/tl/.

Telegram 决定创建所谓的“ TL 语言”,它类似于其 API 支持的所有可用方法、类型和构造函数的定义。任何人都可以获取此类.tl文件并方便地为任何其他编程语言生成代码,例如用于 Telethon 的 Python。

于 2017-06-09T16:02:30.143 回答