自行安裝python
cd ccuRobClass
pip install -r requirements.txt
先安裝Docker,可參考 安裝Docker
sudo docker build -t "ccuRobClass"
注意,若是之後要更改想要搶課的資訊,需重新建立 image
在 env.py
裡面先設置
USERID = "使用者學號"
PASSWORD = "使用者密碼"
建議使用Firefox瀏覽器,只有看要搶哪些課時會用到
之後點擊主要畫面的 加選以上科目
按鈕
點擊右側有 post
字樣的那筆資料,若有多筆,通常會是最下面的,但建議盡快按,這樣只有一筆比較好判斷,並且在下方點選請求按鈕
隨便點擊一欄,點選複製全部
{
"session_id": "bHiKQGToM8M10IbBPD4SAIrLF0H3496iM964",
"dept": "4154",
"grade": "3",
"cge_cate": "",
"cge_subcate": "",
"page": "1",
"e": "0",
"m": "0",
"SelectTag": "1",
"4152015_01": "2",
"4153002_01": "2",
"4153203_01": "2",
"4153205_01": "2",
"course": "4153206_01",
"4153206_01": "2",
"4153208_01": "2",
"4153211_01": "2",
"4153900_01": "2",
"4153918_01": "2",
"4153919_01": "2"
}
會複製出一個json格式的物件,最終,我們將這個物件貼進,env.py
裡面的
ROBCLASSLIST = [
{
"session_id": "bHiKQGToM8M10IbBPD4SAIrLF0H3496iM964",
"dept": "4154",
"grade": "3",
"cge_cate": "",
"cge_subcate": "",
"page": "1",
"e": "0",
"m": "0",
"SelectTag": "1",
"4152015_01": "2",
"4153002_01": "2",
"4153203_01": "2",
"4153205_01": "2",
"course": "4153206_01",
"4153206_01": "2",
"4153208_01": "2",
"4153211_01": "2",
"4153900_01": "2",
"4153918_01": "2",
"4153919_01": "2"
}
]
若有多個,用,
隔開,大致上會長這樣
ROBCLASSLIST = [
{
# class1
},
{
# class2
}
]
建立完成 !
學校的規定是 一次登陸只能發送200次請求,不然會被視為機器人封鎖帳號 8 小時,此處可設置請求多少次後要重新登錄(獲取session)
ROUNDTIMES = 150
一秒發送幾次搶課的請求,預設是三次,自己實測最高可以到一秒10次左右,但要小心太誇張可能被抓,基本上實際值會比設定的值再慢一點點
TIMESINONESECOND = 3
python main.py
sudo docker run ccuRobClass