專為靜宜大學學生設計的 Discord 機器人,整合校園公告、公車動態、氣象資訊以及超強大的進階課綱查詢系統。
- 進階搜尋 (
/search_course):支援學期、系所、關鍵字、教師、星期、節次、班級等多重條件篩選。 - 詳細課綱 (
/syllabus):即時抓取並解析學校系統的詳細課綱,包括評分標準、授課進度、課業輔導時間等。 - 課程餘額 (
/remaining):查詢課程的即時人數上限與已選人數。
- 公車動態 (
/bus):即時查詢校門、主顧樓、聖母堂的公車到站預估時間 (資料來源: TDX)。 - 即時天氣 (
/weather):查詢靜宜大學校園即時天氣與降雨機率 (資料來源: 中央氣象署)。
- 最新公告 (
/news):即時抓取學校首頁最新重要公告。
請確保已安裝 Python 3.11+,並申請以下 API Key:
- Discord Bot Token: Discord Developer Portal
- TDX Client ID & Secret: 運輸資料流通服務平臺
- CWA API Key: 氣象資料開放平臺
git clone https://github.com/YourRepo/PU_Discord_Bot.git
cd PU_Discord_Botpip install -r requirements.txt在專案根目錄建立 .env 檔案,填入以下資訊:
DISCORD_TOKEN=你的DiscordToken
TDX_ID=你的TDX_ID
TDX_KEY=你的TDX_KEY
CWA_KEY=你的CWA_KEY(可選) 若需設定特定頻道的推播功能,請修改 config.json。
python main.py成功啟動後,終端機將顯示 We have logged in as 靜宜小幫手...。
- 語言: Python 3.11
- 框架: Pycord (Discord Slash Commands)
- 爬蟲: Requests + BeautifulSoup4 (針對
mypu.pu.edu.tw與alcat.pu.edu.tw進行最佳化) - 排程: APScheduler (定時更新天氣與公車快取)
- 本專案僅供學術研究與個人使用,請勿用於攻擊學校伺服器。
- 課綱查詢功能依賴學校網站結構,若學校改版可能會導致功能失效。
歡迎提交 Pull Request 或 Issue 來改進此專案!