Skip to content

Hanson0901/SQL_final_project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Contributors Forks Stargazers Issues Unlicense License


Logo

CGU_SQL_team1_final_project

屌到爆炸的資料庫專題!
查看所有檔案»

檢視分工 · 回報 Bug · Request Feature

目錄
  1. 關於專案
  2. 開始使用
  3. 用法
  4. 專案目標
  5. 貢獻
  6. License
  7. Contact
  8. 資料來源

About The Project

Product Name Screen Shot

個專案是一套以 Line Bot 為主要互動介面的即時資料查詢與回覆系統,結合 Python、Flask、MySQL 資料庫與爬蟲技術,讓使用者可以透過 Line 直接查詢最新資料,並獲得自動化回應。專案架構與功能如下:

  1. 使用者互動層(前端)

使用者透過 Line Bot 發送訊息,作為主要的互動介面。

部分功能可透過 HTML 頁面呈現資訊,提升資訊可讀性。

  1. 中介層(後端伺服器)

以 Flask(Python Web 框架)作為伺服器主體,負責處理來自 Line Bot 或 HTML 頁面的請求。

內建爬蟲模組,能自動抓取網路上的最新資料,並即時更新資料庫。

使用 pymysql 或 Flask-MySQLdb 套件,實現與 MySQL 資料庫的連線與資料操作。

可選用 PHP 處理部分網頁或 API 功能。

透過 ngrok 將本地端 Flask 伺服器公開至網際網路,讓 Line Bot 能順利與伺服器溝通。

  1. 資料儲存層(資料庫)

採用 XAMPP 架設 MySQL 資料庫,負責儲存所有查詢資料、用戶紀錄與爬蟲更新內容。

可利用 phpMyAdmin 進行資料庫與資料表的管理與維護。

  1. 技術流程簡述

使用者在 Line 上輸入查詢指令。

Line Bot 將訊息傳送給 Flask 伺服器。

Flask 後端根據需求,調用爬蟲取得最新資料,或直接查詢 MySQL 資料庫。

查詢結果經由 Flask 處理後回傳至 Line Bot,再回覆給使用者。

所有資料皆儲存在 XAMPP 架設的 MySQL 資料庫中,確保資料一致性與可追溯性。

  1. 特色與應用場景

結合即時通訊(Line)、自動化爬蟲與資料庫,適合用於即時資料查詢、資訊推播、個人化服務等應用。

架構彈性高,便於本地開發測試與後續雲端部署。

(回到最上面)

Built With

使用以下工具完成此專案

  • Flask
  • beautifulsoup
  • Linebot
  • html5
  • Xampp
  • pymysql
  • GCP
  • JQuery
  • selenium

(回到最上面)

Getting Started

您需要下載或安裝的文件

Prerequisites

需要安裝的python套件,請用以下指令在含有python變數的command-Line

  • python
    pip install beautifulsoup4
    pip install Flask
    pip install pymysql
    pip isntall line-bot-sdk
    pip install selenium
    pip install pandas
    pip install fastf1
    pip install flask-cors
    pip install fake-useragent
    pip install certbot
    pip install APScheduler
    pip install pycountry
    pip install permutations

Installation

Below is an example of how you can instruct your audience on installing and setting up your app. This template doesn't rely on any external dependencies or services.

  1. Get a free domain at https://www.noip.com/ if you want your own

  2. Clone the repo

    git clone https://github.com/Hanson0901/SQL_final_project.git
  3. Change git remote url to avoid accidental pushes to base project

    git remote set-url origin github_username/repo_name
    git remote -v # confirm the changes
  4. install xampp at https://www.apachefriends.org/zh_tw/download.html

(回到最上面)

Usage

完成前置步驟後,可使用以下方式配置linebot與website:

  1. 使用GCP、AWS、OCI等線上sever執行本次專案所需檔案

  2. 本地端配置,並用ngrok等工具開放端口給外部使用

  3. 專案內的website部分專案需修改IP相關的數值為己身的數值,勿使用與本專案案例中相同之IP與domain

分支內容:

  1. main: 合併完後的整份專題程式碼

  2. Liao 廖奕翰

  3. forlinux 楊程宇負責管理的GCP檔案 包含假官網、即時比分

  4. hanson 楊程宇

  5. leo 呂昊宸

  6. linebot 楊程宇+呂昊宸+洪偉城

  7. uuri 林政維

  8. wei 洪偉城

(回到最上面)

Roadmap

  • 第一階段
    • 從網頁上爬蟲賽事資料
    • 將資料轉為JSON
    • 完成web UI設計與回傳後端
    • 額外功能
      • 查詢比分
      • 意見回饋
  • 第二階段
    • Linebot richmenu設計
    • Linebot 訊息反饋與追蹤設置
    • 使用line-liff連結UID至website
    • 實現所有第一階段功能於Linebot

請參閱未解決的問題以取得提議的功能現有問題的完整清單。

(回到最上面)

Contributing

此項專案『主要』由以下開發者完成。若您在名單內,您所做的任何貢獻都將受到極大的感謝

如果您有任何建議可以讓這個專案變得更好,請 fork 此 repo 並建立一個 pull request。您也可以直接開啟一個帶有 "enhancement" 標籤的 issue。 別忘了給這個專案點個星星!再次感謝您的支持!

  1. Fork 此專案
  2. 建立您的功能分支 (git checkout -b feature/AmazingFeature)
  3. 提交您的更改 (git commit -m '新增一些 AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 開啟一個 Pull Request

Top contributors:

contrib.rocks image

(回到最上面)

License

根據 Unlicense 授權條款分發。詳細資訊請參閱 LICENSE.txt 文件。

(回到最上面)

Contact

長庚大學第一癡情-呂號稱 @hao_chen_cgu_csie_2005.05.05 - B1229012@cgu.edu.tw

Project Link: https://github.com/Hanson0901/SQL_final_project

(回到最上面)

Acknowledgments

Use this space to list resources you find helpful and would like to give credit to. I've included a few of my favorites to kick things off!

(回到最上面)

716d625 (FIX MD)

About

SQL final project of Chang Grng University team 1

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages