- 這是一個能夠幫你快速刷高鐵票的爬蟲程式
- 利用 selenium 套件能夠更快速地刷票
- 高鐵訂票網站有文字驗證碼需填寫,所以無法使用 request 的方式進行爬蟲
- 搭配自動排程執行 (ex. crontab) 或是常駐的執行能夠更有效率的找票
Python
Version >= 3.10pip3
-
use in terminal
-
cd THSR_notify
-
安裝必要套件
pip3 install -r requirements.txt
-
Telegram Bot
- 找機器人爸爸申請一個 Bot
- 連結
- 輸入
/newbot
- 接著輸入名稱
- 之後再輸入
username
- 結尾要有
bot
orBot
字樣
- 結尾要有
- 之後你就會取得與機器人的聊天室連結與 Token
務必保管好
- 開啟瀏覽器,進入
https://api.telegram.org/bot{Your_api_token}/getUpdates
{Your_api_token} 請替換成你剛剛取得的 Token,括號不用保留
- 你會看到
{"ok":true,"result":[]}
字樣 - 之後至你剛剛新增的 bot 機器人的聊天室輸入
/myid
- 到剛剛的頁面重新整理一次
- 會跳出更多資訊,紅色區域為你與機器人的聊天室 id token
一樣請保管好
-
查票條件介面
python3 main.py
-
測試爬蟲
python3 climb.py
-
自動排程執行 (Linux based)
crontab -e
- 選擇編輯器
- 加上 crontab 語法 (Ex.
*/10 * * * * python3 /[PATH]/THSR_notify/climb.py
) - 使用參考
Windows
可使用工作排程器 進行自動化排程執行 近期沒時間寫教學,想到再補,可以先請教估狗大神 XD
目前無檢查輸入的功能,需注意文字是否有輸入錯誤以防無法順利執行爬蟲
- 皆使用免費開源的套件
- 文字驗證碼使用 Ddddocr 套件,易出錯
- 自動重新刷新網站重新填寫資料
- 能找出區間中最早出發的班次,並顯示出發時間
- 日誌能夠紀錄新增、刪除條件的 timestamp
- 執行一次爬蟲過後能夠紀錄此筆查詢的最終結果
- telegram bot 互動功能
- mail 自動通知功能
- 更人性化一點(Ex. GUI, 網頁
- 時間班次匹配更精確
- 挑選時程最快的班次
- 自動訂票功能
- 自動檢查輸入錯誤
- 如有任何使用上的問題 or 建議 or 指教,歡迎直接 mail 給我與我溝通!如發現 code 的部分有問題也歡迎直接發 issue
- 如果喜歡也別吝嗇點個 Star !
- Mail : [email protected]