寫在前面
校園網(wǎng)現(xiàn)在實現(xiàn)一人一號制间校,每次鏈接校園網(wǎng)時都要打開瀏覽器輸入賬號密碼才能登錄矾克,有點麻煩,為了節(jié)省時間憔足,研究了一下胁附,決定用python寫一個自動登錄的腳本,本文章內容僅供參考滓彰,有什么不足的地方可以在評論區(qū)留言喲~~
工具
-Chrome瀏覽器(安裝包下載:[百度網(wǎng)盤下載]https://pan.baidu.com/s/1oOduV5ZFZO8X_yYyVjPi9g 提取碼:pih7 )
-PyCharm
-python+requests包
瀏覽器操作
打開瀏覽器:輸入校園網(wǎng)登錄地址:192.168.3.5(不同學校登錄地址不一樣)
使用檢查模式檢查網(wǎng)頁
F12打開檢查模式控妻,第一步將檢查Network--再登錄界面輸入賬號密碼--點擊登錄--下方會請求到一個.php文件,這就是我們要操作的文件
打開php文件揭绑,選擇檢查文件請求Header
-Request URL就是我們登錄的URL
-From Data 就是請求包的數(shù)據(jù)
python主要代碼
# 登錄函數(shù)
def login_request(name, password):
# 網(wǎng)絡未鏈接時打印提示
# print("[03] {} raspberry is offline 弓候, request now... ".format(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')))
#password = base64.b64encode(password.encode()).decode() # 加密
# 打包請求數(shù)據(jù)
data1 = {"action": "login",
"username": name,
"password": password,
"ac_id": 1,
"save_me": 1,
"ajax": 1}
try:
result = requests.post(LOGIN_PAGE_URL, data=data1)
# 打印請求結果
print(result.text)
# 打印登錄成功的提示信息
print("[01] {} login success ".format(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')))
except:
print("[00] {} requsest error ,raspberry isnot connected to WIFI ".format(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')))
用批處理文件運行腳本
@echo off
python E:\PycharmProjects\demo\Python\login\login.py
pause
詳細代碼
本代碼已經(jīng)上傳到Github
https://github.com/ljr7822/iwenHub/blob/master/login.py
總結
python用了不到40行的代碼他匪,就實現(xiàn)了自動登錄的功能菇存,不得不佩服python的強大,個人覺得雖然這是一個很簡單的demo邦蜜,但是在這個項目里學到的卻不少~~