目录
1.chrome浏览器 [打开登陆页面] [右键-检查] [选择-网络]
我的设备:戴尔台式机,没有无线网卡
系统:ubuntu16.04,宽带连接上网,校园网原因,每隔大约半小时就需要重新网页登陆账号.所以干脆写个脚本自动登陆好啦.
1.chrome浏览器 [打开登陆页面] [右键-检查] [选择-网络]
[在登陆页面输入错误账号密码-登陆](因为我们校园网输入正确账号密码直接登陆看不到post,其他学校不一定)
然后就可以看到一个post请求,点击查看请求头
2.ecnuAutoLogin.py
#-*-coding:utf-8-*-
'''
East China Normal University Auto Login Script
@author:yqECNU
@parameter:post_addr:ECNU login address
post_header:Post request for browser login to campus network
post_data:user's username and password
@date:2020-01-06
'''
import requests
#login address
post_addr = "https://login.ecnu.edu.cn/include/auth_action.php"
post_header = {
'Accept':'*/*',
'Accept-Encoding':'gzip, deflate, br',
'Accept-Language':'zh-CN,zh;q=0.9',
'Connection': 'keep-alive',
'Content-Length':'86',
'Content-Type':'application/x-www-form-urlencoded; charset=UTF-8',
'Cookie':'login=bQ0pOyR6IXU7PJaQQqRAcBPxGAvxAcroYpuUxcq5rkCP9fvRk3PBIb6%252BctruCxvC1jPtY5bxouVbXdPGFn0eEFzNYdB54rKMa4nt78IFaRg%252FF8b86TiqI8u6OqunIhn24l%252Fv0%252FW%252B25nIKqIMFoB65TuSmPzyOoe%252BDL9pL%252FFdsdAIAjBjbLRNU1aU; login=bQ0pOyR6IXU7PJaQQqRAcBPxGAvxAcroYpuUxcq5rkCP9fvRk3PBIb6%252BctruCxvC1jPtY5bxouVbXdPGFn0eEFzNYdB54rKMa4nt78IFaRg%252FF8b86TiqI8u6OqunIhn24l%252Fv0%252FW%252B25nIKqIMFoB65TuSmPzyOoe%252BDL9pL%252FFdsdAIAjBjbLRNU1aU',
'Host':'login.ecnu.edu.cn',
'Origin':'https://login.ecnu.edu.cn',
'Referer':'https://login.ecnu.edu.cn/srun_portal_pc.php?ac_id=1&',
'Sec-Fetch-Mode':'cors',
'Sec-Fetch-Site':'same-origin',
'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36',
'X-Requested-With':'XMLHttpRequest'
}
post_data ={
'action': 'login',
'username': '麻烦写自己账号~',
'password': '麻烦写自己密码~',
'ac_id': '1',
'user_ip': '',
'nas_ip': '',
'user_mac': '',
'save_me': '0',
'ajax': '1'
}
response = requests.post(post_addr,data = post_data, headers = post_header)
print("login success!")
3.使用crontab创建定时任务
3.1 $ crontab -e #修改配置文件
添加新的一行:
#输入命令后出现如下说明
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h dom mon dow command
#格式为:分 时 日 月 星期几 [命令]
#*号表示every
* * * * * /home/yangqq/anaconda3/envs/Step123/bin/python /home/yangqq/ecnuAutoLogin.py >> /home/yangqq/ecnuAutoLogin_Log.log 2>&1
3.2 Ctrl + X 退出,保存选y
3.3 $ crontab -l #查看是否已写入命令
3.4 脚本每分钟自动执行登陆一次成功~
(也可以根据自己需要更换脚本执行时间)
终于可以摆脱校园网总是断的麻烦啦哈哈!!