Python / 向特定电报用户发送消息?
Python / Send message to specific telegram user?
我想向特定的电报用户发送消息 -
所以我创建了一个名为 Rapid1898Bot 的机器人,并为其获取了 api-key。
我也在bot里发了一条消息,得到了
https://api.telegram.org/bot<Bot\_token>/getUpdates
聊天ID
使用以下代码,我现在可以向机器人发送消息 - 没问题:
import os
from dotenv import load_dotenv, find_dotenv
import requests
load_dotenv(find_dotenv())
TELEGRAM_API = os.environ.get("TELEGRAM_API")
# CHAT_ID = os.environ.get("CHAT_ID_Rapid1898Bot")
CHAT_ID = os.environ.get("CHAT_ID_Rapid1898")
print(CHAT_ID)
botMessage = "This is a test message from python!"
sendText = f"https://api.telegram.org/bot{TELEGRAM_API}/sendMessage?chat_id={CHAT_ID}&parse_mode=Markdown&text={botMessage}"
response = requests.get(sendText)
print(response.json())
但现在我还想向特定的电报用户发送消息。根据这个解释:
我期待
a) 从例如发送消息。我的电报帐户到机器人
b) 然后打开
https://api.telegram.org/bot<Bot\_token>/getUpdates
但不幸的是,它似乎总是相同的聊天 ID,我可以用它发送消息到 rapid1898bot - 但不能发送到我的电报帐户。
为什么这不起作用,为什么我总是得到相同的聊天 ID?
您已经拥有一个机器人及其令牌
之后你需要得到 chat_id
:
- 在聊天中写消息
- 访问
https://api.telegram.org/bot<YourBOTToken>/getUpdates
并在键 message['chat']['id']
下获取 chat_id
import requests
def telegram_bot_sendtext(bot_message):
bot_token = ''
bot_chatID = ''
send_text = 'https://api.telegram.org/bot' + bot_token + '/sendMessage?chat_id=' + bot_chatID + '&parse_mode=Markdown&text=' + bot_message
response = requests.get(send_text)
return response.json()
test = telegram_bot_sendtext("Testing Telegram bot")
print(test)
我想向特定的电报用户发送消息 -
所以我创建了一个名为 Rapid1898Bot 的机器人,并为其获取了 api-key。 我也在bot里发了一条消息,得到了
https://api.telegram.org/bot<Bot\_token>/getUpdates
聊天ID
使用以下代码,我现在可以向机器人发送消息 - 没问题:
import os
from dotenv import load_dotenv, find_dotenv
import requests
load_dotenv(find_dotenv())
TELEGRAM_API = os.environ.get("TELEGRAM_API")
# CHAT_ID = os.environ.get("CHAT_ID_Rapid1898Bot")
CHAT_ID = os.environ.get("CHAT_ID_Rapid1898")
print(CHAT_ID)
botMessage = "This is a test message from python!"
sendText = f"https://api.telegram.org/bot{TELEGRAM_API}/sendMessage?chat_id={CHAT_ID}&parse_mode=Markdown&text={botMessage}"
response = requests.get(sendText)
print(response.json())
但现在我还想向特定的电报用户发送消息。根据这个解释:
我期待
a) 从例如发送消息。我的电报帐户到机器人
b) 然后打开
https://api.telegram.org/bot<Bot\_token>/getUpdates
但不幸的是,它似乎总是相同的聊天 ID,我可以用它发送消息到 rapid1898bot - 但不能发送到我的电报帐户。
为什么这不起作用,为什么我总是得到相同的聊天 ID?
您已经拥有一个机器人及其令牌
之后你需要得到 chat_id
:
- 在聊天中写消息
- 访问
https://api.telegram.org/bot<YourBOTToken>/getUpdates
并在键message['chat']['id']
下获取
chat_id
import requests
def telegram_bot_sendtext(bot_message):
bot_token = ''
bot_chatID = ''
send_text = 'https://api.telegram.org/bot' + bot_token + '/sendMessage?chat_id=' + bot_chatID + '&parse_mode=Markdown&text=' + bot_message
response = requests.get(send_text)
return response.json()
test = telegram_bot_sendtext("Testing Telegram bot")
print(test)