Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

73 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

靜宜大學小幫手 (PU Discord Bot)

Python 3.11 Pycord

專為靜宜大學學生設計的 Discord 機器人,整合校園公告、公車動態、氣象資訊以及超強大的進階課綱查詢系統

✨ 主要功能

🔎 課程與課綱查詢

  • 進階搜尋 (/search_course):支援學期、系所、關鍵字、教師、星期、節次、班級等多重條件篩選。
  • 詳細課綱 (/syllabus):即時抓取並解析學校系統的詳細課綱,包括評分標準、授課進度、課業輔導時間等。
  • 課程餘額 (/remaining):查詢課程的即時人數上限與已選人數。

🚌 交通與天氣

  • 公車動態 (/bus):即時查詢校門、主顧樓、聖母堂的公車到站預估時間 (資料來源: TDX)。
  • 即時天氣 (/weather):查詢靜宜大學校園即時天氣與降雨機率 (資料來源: 中央氣象署)。

📰 校園資訊

  • 最新公告 (/news):即時抓取學校首頁最新重要公告。

🚀 安裝與設定

1. 前置準備

請確保已安裝 Python 3.11+,並申請以下 API Key:

2. 下載專案

git clone https://github.com/YourRepo/PU_Discord_Bot.git
cd PU_Discord_Bot

3. 安裝依賴

pip install -r requirements.txt

4. 設定環境變數

在專案根目錄建立 .env 檔案,填入以下資訊:

DISCORD_TOKEN=你的DiscordToken
TDX_ID=你的TDX_ID
TDX_KEY=你的TDX_KEY
CWA_KEY=你的CWA_KEY

(可選) 若需設定特定頻道的推播功能,請修改 config.json

5. 啟動機器人

python main.py

成功啟動後,終端機將顯示 We have logged in as 靜宜小幫手...

🛠️ 技術架構

  • 語言: Python 3.11
  • 框架: Pycord (Discord Slash Commands)
  • 爬蟲: Requests + BeautifulSoup4 (針對 mypu.pu.edu.twalcat.pu.edu.tw 進行最佳化)
  • 排程: APScheduler (定時更新天氣與公車快取)

⚠️ 注意事項

  • 本專案僅供學術研究與個人使用,請勿用於攻擊學校伺服器。
  • 課綱查詢功能依賴學校網站結構,若學校改版可能會導致功能失效。

📝 貢獻

歡迎提交 Pull Request 或 Issue 來改進此專案!

About

專為靜宜大學學生設計的聊天機器人,快速解答校園生活中的各類問題,提供學術、生活、服務等多方面的支持,讓學生在校園中更便捷地獲取所需資訊。

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages