【问题标题】:How to get access token of telegram's telegraph account?如何获取电报电报帐户的访问令牌?
【发布时间】:2020-06-13 07:05:33
【问题描述】:

我想通过电报 API 在 Telegram 的 telegraph.ph 网站上创建和编辑页面。

https://telegra.ph/api#createPage

为此,我需要知道电报帐户的access token。我一直在使用谷歌搜索如何做到这一点,但仍然找不到任何答案。

我正在使用电报 python 库。

https://github.com/python273/telegraph

我正在使用 python 3.7

【问题讨论】:

    标签: python python-3.x telegram telegraph


    【解决方案1】:

    在 Telegraph API 上没有可用的端点来获取实际的 access_token
    但是...如果您真的需要完全获取您的 Telegraph access_token,
    您可以通过在浏览器中访问 devtools 来获取它,同时通过他们的机器人在 Telegra.ph 中进行身份验证。

    它作为 cookie tph_token 传递并被发送到 https://edit.telegra.ph/check 端点检查授权。

    查看您的开发工具中的Network 选项卡,切换到XHR 请求过滤器,然后选择check 请求(example

    在 devtools 窗口的底部,您会看到另一个出现的窗口,其中 Headers 选项卡被选中。

    转到Cookies,然后您将看到您的令牌,您可以将其用作access_token

    我敢肯定,这不是一个端点,您可以使用该指令自动获取该令牌,方法是捕获和解析一些请求,或者将 Telegraph bot 的 auth url 显式传递给您的 python 项目。
    我不知道怎么做。不知何故。但可以肯定的是,如果您愿意,我的回答将帮助您创建获取算法

    【讨论】:

      【解决方案2】:

      您要查找的 API 端点是 createAccount。调用此端点会返回一个包含访问令牌的对象。

      来自文档:

      成功时,返回一个包含常规字段和附加 access_token 字段的 Account 对象。

      话虽如此,您提到的库使使用 api 变得更加容易。你甚至都不知道access_token 明确。您只需要调用.create_account(),库就会在内部管理令牌(see herehere 知道如何操作)。

      这是一个关于如何使用 lib 创建帐户并使用它的示例代码:

      
      from telegraph import Telegraph
      
      telegraph = Telegraph()
      
      acc = telegraph.create_account(short_name='1337')
      
      print(acc)
      
      response = telegraph.create_page(
          'Hey',
          html_content='<p>Hello, world!</p>',
      
      )
      

      【讨论】:

      • 感谢您的回答。赞成。现在更清楚了,但仍有一些事情让我感到困惑。如果我已经有一个现有帐户怎么办?如何获取现有帐户的访问令牌?每次我想使用 API 做某事时都创建一个新帐户听起来不合理。
      • 在这种情况下,您可以简单地将 access_token 传递给 Telegraph 构造函数,而无需调用 create_account
      • mhm.. 打电话给telegraph.get_access_token() 可能吗?
      • 谢谢。这是一个进步。但是,似乎我必须先create_account 才能使用get_access_token()
      • 哦,如果您已经丢失了access_token,我怀疑您是否可以恢复帐户。你能做的最好的事情就是创建一个新的并保证令牌的安全。我希望你找到更好的解决方案。干杯。
      【解决方案3】:

      我会回答我自己的问题。

      要添加到Tibebes. M's helpful answer,似乎无法获取现有 Telegraph 帐户的访问令牌。因此,唯一的方法是先创建帐户,然后记下返回的访问令牌。将来重用此访问令牌。否则,每当发布新的 Telegraph 消息时,都必须创建一个新帐户。我不知道为什么 Telegraph 是这样设计的,因为它会导致许多过时的帐户,但事实就是这样。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-10-26
        • 2017-05-10
        • 2018-11-25
        • 1970-01-01
        • 2017-10-07
        • 1970-01-01
        • 2015-04-29
        相关资源
        最近更新 更多