首页 >后端开发 >Python教程 >从 Telegram 机器人向用户发送消息

从 Telegram 机器人向用户发送消息

Patricia Arquette
Patricia Arquette原创
2024-12-01 08:53:10385浏览

Telegram 提供 API 来作为机器人向用户发送消息。您可以使用任何编程语言通过 HTTP POST 方法发送消息。我使用 Python 和 Requests 库。

发送消息的URL地址:

https://api.telegram.org/bot<token_from_botfather>/sendMessage

消息正文:

{
    "chat_id": chat_id,
    "text": "Hello World!"
}

如果您想使用 Markdown 标记消息 - 在 JSON 正文中添加“parse_mode”参数:

{
    "chat_id": chat_id,
    "text": "Hello World!",
    "parse_mode": "Markdown"
}

成功完成任务所需的步骤:

  • 在 Telegram 应用中查找 BotFather
  • 创建新机器人并接收令牌
  • 向机器人发送“/start”命令以开始对话。否则,如果您不这样做,您将不会收到消息
  • 编写脚本并测试

Python 脚本示例:

import requests


def send_text_message(TOKEN, chat_id, message):
    url = 'https://api.telegram.org/bot{}/sendMessage'.format(TOKEN)
    data = {'chat_id': chat_id, 'text': message, 'parse_mode': 'Markdown'}
    response = requests.post(url, data=data)
    return response


send_text_message('token_from_botfather', recipient_id, 'Hello World!')

结果:

Sending message from Telegram bot to users

现在我们正在尝试发送文档:

import requests


def send_document(TOKEN, chat_id, file):
    url = 'https://api.telegram.org/bot{}/sendDocument'.format(TOKEN)
    data = {'chat_id': chat_id}
    document = open(file, 'rb')
    files = {'document': document}
    response = requests.post(url, data=data, files=files)
    return response


send_document('token_from_botfather', recipient_id, '/path/to/any/document.file')

结果:

Sending message from Telegram bot to users

以上是从 Telegram 机器人向用户发送消息的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn