【Telegram API】使用 Python 打造 Telegram Notify 新手教學
BY PJ.
-2025 年 4 月 18 日
(最後更新於: 2025 年 5 月 10 日)
LINE Notify 於 2025 年 3 月 31 日停止服務, 如果需要單向透過程式傳遞訊息,就要再找其他替代方案。 本篇文章將手把手教你如何透過使用 Python Telegram API,開發即時通知程式。
操作流程
1. 步驟一:在 Telegram 端建立機器人並取得 Token
(1) 首先在 Telegram Contacts 的 Search 欄位,搜尋 BotFather
並打開(要選擇有藍色勾勾的
)。
(2) 跟他申請一個機器人,取得你機器人的 Token,流程如下:
- Step1:開啟 BotFather 聊天
- Step2:輸入
/newbot
- Step3:輸入機器人名稱(例如:Stock revenue)
- Step4:輸入機器人使用者名稱(需以
bot
結尾,例如:StockRevenue_bot
) - Step5:取得 Token 並複製下來(
HTTP API
後的文字即是 Token)
2. 步驟二:Telegram 端建立群組或與機器人對談
Telegram Bot 可以向 個人或群組
發送訊息,發送訊息的角色就是你的機器人。
- 可以在 Telegram Contacts 找到你剛剛建好的機器人,並直接與它對談。
- 如果想讓機器人在群組發送訊息:
- 建立一個新群組。
- 把機器人加入群組。
- 在群組內對機器人丟一句話(這樣之後才抓得到 Chat ID)。
建立群組方式:
點擊 Chats 右上角的「編輯圖示」 → 選擇「New Group」
(Telegram 第一次建立群組需先加入一位真人,可加入朋友後再將他移除)
3. 步驟三:Python 端取得 Chat ID
完成以上步驟後,使用以下 Python 程式碼來取得 Chat ID
:
import requests
# 替換為您的機器人 Token
BOT_TOKEN = "YOUR TOKEN"
# Telegram API 的 getUpdates URL
GET_UPDATES_URL = f"https://api.telegram.org/bot{BOT_TOKEN}/getUpdates"
# 發送請求以獲取更新
response = requests.get(GET_UPDATES_URL)
# 輸出結果
if response.status_code == 200:
updates = response.json()
print("Updates received:")
print(updates)
else:
print(f"Failed to get updates: {response.status_code}")
以上會回傳類似下列格式的 JSON:
{
"ok": true,
"result": [
{
...
"message": {
"chat": {
"id": -1002277523978,
"title": "MonthRev",
...
}
}
}
]
}
其中的 id
(例如:-1002277523978
)即為群組 MonthRev 的 Chat ID。
簡單來說:
- Token 對應的是機器人(例如:Stock Revenue)
- Chat ID 對應的是聊天對象(可為個人或群組)
4. 步驟四:使用 Python 傳遞訊息
取得 Token 與 Chat ID 後,就可以使用 Python 發送訊息啦!
import requests
BOT_TOKEN = 'YOUR TOKEN'
SEND_MESSAGE_URL = f"https://api.telegram.org/bot{BOT_TOKEN}/sendMessage"
def send_message(chat_id, text):
payload = {
"chat_id": chat_id,
"text": text
}
response = requests.post(SEND_MESSAGE_URL, json=payload)
if response.status_code == 200:
print("Message sent successfully!")
else:
print(f"Failed to send message: {response.text}")
# 測試傳送訊息
GROUP_CHAT_ID = -1002277523978 # 替換為您的群組 CHAT_ID
send_message(GROUP_CHAT_ID, "Hello, this is a test message!")
結語
以上就是使用 Python 串接 Telegram Bot API,實現 Notify 功能的完整流程。
可以應用在:
- 群組推播
- 自動化排程結果通知
- 傳遞爬蟲資料
- 即時錯誤報告等等
歡迎大家參考實作看看!
#python #telegram #notify #api