Skip to content

xiaojie4082/PU_Discord_Bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

71 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

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages