写在前面
校园网现在实现一人一号制,每次链接校园网时都要打开浏览器输入账号密码才能登录,有点麻烦,为了节省时间,研究了一下,决定用python写一个自动登录的脚本,本文章内容仅供参考,有什么不足的地方可以在评论区留言哟~~
工具
-Chrome浏览器(安装包下载:[百度网盘下载]https://pan.baidu.com/s/1oOduV5ZFZO8X_yYyVjPi9g 提取码:pih7 )
-PyCharm
-python+requests包
浏览器操作
打开浏览器:输入校园网登录地址:192.168.3.5(不同学校登录地址不一样)
使用检查模式检查网页
F12检查.pngF12打开检查模式,第一步将检查Network--再登录界面输入账号密码--点击登录--下方会请求到一个.php文件,这就是我们要操作的文件
40DRJLSBEJSYOQ{Z1W8KU$D.png打开php文件,选择检查文件请求Header
-Request URL就是我们登录的URL
-From Data 就是请求包的数据
python主要代码
# 登录函数
def login_request(name, password):
# 网络未链接时打印提示
# print("[03] {} raspberry is offline , request now... ".format(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')))
#password = base64.b64encode(password.encode()).decode() # 加密
# 打包请求数据
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
详细代码
本代码已经上传到Github
https://github.com/ljr7822/iwenHub/blob/master/login.py
总结
python用了不到40行的代码,就实现了自动登录的功能,不得不佩服python的强大,个人觉得虽然这是一个很简单的demo,但是在这个项目里学到的却不少~~
网友评论