本程式以 2023 年大學學科能力測驗作為範例。
本機器人共使用兩個需要額外安裝的套件
分別是用來傳送 Telegram Bot API 請求的 requests
和用來繪製圖片的 Pillow (俗稱 PIL,不過正牌 PIL 已停止維護)
第一次使用需要額外到終端機中執行安裝。
pip install Pillow requests
在開始使用機器人之前,您必須先取得一些 API 資訊:
- 建立一個 Telegram Bot 並取得 Token。
- 取得聊天室 chat ID (群組、頻道及個人聊天室均可,但務必注意機器人帳號擁有發言權限)
取得資訊之後,在程式碼的 TelegramBottoken =
、 TelegramChatID =
後方以字串形式填入相關資訊,它看起來會長得像這樣:
# 機器人 API 資訊
TelegramBottoken = "123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11"
TelegramChatID = "-1401592845274"
至於如何取得這些資訊,這不在這篇說明的範圍 不過如果你不知道的話,我還是很好心的幫你準備了連結:
- 取得 Token:Telegram 建立機器人 圖文教學
- 取得 ChatID:[Telegram] Telegram(五) 取得 Chat ID
你可以在程式碼中找到一個稱為 GSAT
的變數,只要改變後方函數內的 year
、month
、day
三個數值即可改變日期。
# 天數計算
today = datetime.date.today()
GSAT = datetime.date(year=2023, month=1, day=13)
print((GSAT - today).days)
- 送出訊息後,Console 會列印出 Telegram 那邊回傳回來的偵錯訊息,顯示
<response [200]>
為成功送出。 - 程式中留有一個未使用的函數
telegram_bot_sendtext
以備不時之需,如果需要的話可以順便給你拿去用。 - 如果你用了
telegram_bot_sendtext
函數,Telegram 那邊返回回來的偵錯訊息就有些複雜了,不過其實主要看最前面顯示發送有沒有成功就好。 - 有任何問題或建議歡迎來信與我討論。([email protected])
- 作者長得超帥的
這裡是一些套件的相關使用方式,如果你想要修改程式的話,可以當作工具書查閱。