小编Cal*_*tag的帖子

如何在 Telegram 机器人上创建三破折号菜单?

我如何在 Telegram 机器人上创建一个三破折号菜单,就像他们对 Jobs 机器人所做的那样?它应该类似于这样:

我们如何称呼这种菜单呢?

telegram telegram-bot

10
推荐指数
2
解决办法
1万
查看次数

无法使用模块 aioflask(Python)。ImportError:无法从“flask.ctx”导入名称“_app_ctx_stack”

我需要使用 aioflask 为我的 telegram-bot 设置 webhook。这是我的代码,我在其中设置了 webhook:

from aioflask import Flask, request
...

app = Flask(__name__)
...

@app.route('/')
async def webhook():
    await bot.delete_webhook()
    await bot.set_webhook(url=APP_URL)

    return '!', 200
...
Run Code Online (Sandbox Code Playgroud)

但是,当我运行应用程序时,它给了我这个错误:

Traceback (most recent call last):
  File "D:/Python_Projects/FilmMarketBot/check.py", line 1, in <module>
    from aioflask import Flask, request
  File "D:\Python_Projects\FilmMarketBot\venv\lib\site-packages\aioflask\__init__.py", line 2, in <module>
    from .app import Flask
  File "D:\Python_Projects\FilmMarketBot\venv\lib\site-packages\aioflask\app.py", line 14, in <module>
    from .ctx import AppContext, RequestContext
  File "D:\Python_Projects\FilmMarketBot\venv\lib\site-packages\aioflask\ctx.py", line 4, in <module>
    from flask.ctx import AppContext as OriginalAppContext, \ …
Run Code Online (Sandbox Code Playgroud)

flask python-asyncio telegram-webhook

6
推荐指数
1
解决办法
2万
查看次数

如何获取“appname”来构建 t.me URL 以启动 Telegram Web App for Bots

在文档页面Telegram 的 Web Apps 的

\n
\n
直接链接网络应用程序
\n

您可以使用直接链接直接在当前\n聊天中打开 Web 应用程序。如果链接中包含非空 startapp 参数,则该参数将在 start_param 字段和 GET\n参数 tgWebAppStartParam 中传递到 Web 应用程序。

\n

在此模式下,Web 应用可以使用 chat_type 和 chat_instance\n参数来跟踪当前聊天上下文。这引入了对多个聊天成员\xe2\x80\x93 并发和共享使用的支持,\n以创建实时白板、群组订单、多人游戏和类似应用程序。

\n

从直接链接打开的 Web 应用程序无法访问聊天 \xe2\x80\x93,它们\n无法代表用户读取消息或发送新消息。要发送消息,用户必须重定向到内联模式并主动选择结果。

\n
例子
\n
    \n
  • https://t.me/bot用户名/应用程序名称
    \n
  • \n
  • https://t.me/botusername/应用程序名称?startapp=command
    \n
  • \n
\n
\n

那么,我们可以从哪里获取应用程序名称呢?有人可以解释一下吗?谢谢。

\n

web-applications telegram

6
推荐指数
1
解决办法
1985
查看次数

如何在 Telegram Bot 上禁用网页预览

这是我用来向用户发送回复的示例代码(Python Telegram Bot)

        conf_mes = await e.reply(
            f"<a href='https://URL'>My Text</a>/n/n ..Description..",
            parse_mode="html",
            buttons=buts,
        )
Run Code Online (Sandbox Code Playgroud)

当机器人向用户发送消息时,如何禁用网页预览!

python python-3.x telegram telegram-bot

4
推荐指数
1
解决办法
4705
查看次数

无法在 Python Telegram bot API 中将参数传递给 context.job_queue.run_once

在下面的代码中,我们如何将context.argsand传递context给另一个函数,在这种情况下callback_search_msgs

def search_msgs(update, context):
    print('In TG, args', context.args)
    context.job_queue.run_once(callback_search_msgs, 1, context=context, job_kwargs={'keys': context.args})

def callback_search_msgs(context, keys):
    print('Args', keys)
    chat_id = context.job.context
    print('Chat ID ', chat_id)

def main():
    updater = Updater(token, use_context=True)
    dp = updater.dispatcher
    dp.add_handler(CommandHandler("search_msgs",search_msgs, pass_job_queue=True,
                                  pass_user_data=True))

    updater.start_polling()
    updater.idle()


if __name__ == '__main__':
    main()
Run Code Online (Sandbox Code Playgroud)

telegram python-telegram-bot telegram-bot

3
推荐指数
1
解决办法
1073
查看次数

踢 TELEPOT 时机器人不断显示相同的错误

我创建了一个电报机器人,它只打印我发送的消息,一切正常,直到我阻止它或从组中添加/踢它,当我这样做时,机器人不断显示此错误:1

这是代码:

import telepot
from telepot.loop import MessageLoop
from pprint import pprint
import time

TOKEN="..."

def handler(msg):
    content, chat, id=telepot.glance(msg)
    pprint(msg)

bot=telepot.Bot(TOKEN)
bot.message_loop(handler)

while True:
    time.sleep(10)
Run Code Online (Sandbox Code Playgroud)

我也尝试过使用该getUpdates功能,它会不断打印所有消息,甚至是旧的已删除消息。我认为问题是由“存储”消息引起的,但我不知道如何解决它。

我在用着:

  • 遥控器版本12.7
  • 蟒蛇3.9.0

python telegram-bot telepot

1
推荐指数
1
解决办法
1006
查看次数

如何使用 Python 向 telegram 发送消息

我有一个 python 脚本,其中将消息记录到控制台。但我也希望使用我的机器人将这些消息发送到电报。

任何提示和建议都会有所帮助。提前致谢。

我还没有尝试过任何事情,只是想知道这是否可能,如果可能的话怎么办?

python telegram-bot

1
推荐指数
1
解决办法
1万
查看次数