此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出。欢迎各位前来交流。(部分材料来源网络,若有侵权,立即删除)
本人博客所有文章纯属学习之用,不涉及商业利益。不合适引用,自当删除!
若被用于非法行为,与我本人无关
SCU每日打卡自动填写
手动挡运行效果自动挡运行效果手动挡
手动将cookie复制进去就好了import requestsimport reheaders = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36','Cookie':''}def get_post():url = 'https://wfw./ncov/wap/default/index'rs = requests.session()r = rs.get(url, headers=headers)try:info = re.findall(r'.*?oldInfo: (.*),.*?', r.text)except:print("[ERROR]:Cookie已过期,请手动更新")return 0data = eval(info[0])try:Return =requests.post('https://wfw./ncov/wap/default/save', headers=headers, data=data)Return=Return.json()print("[INFO]:今日填报结果:"+Return['m'])except:print("[ERROR]:填写内容已改动,本次请手动填报")if __name__ == "__main__":print("="*500)print("[INFO]:欢迎使用一体化自动填报程序\n[INFO]:请载手动添加cookie后再次载入本程序\n[INFO]:如以添加请忽视")get_post()print("=" * 500)
运行效果
自动挡
在项目文件下建好info.txt然后依次输入账号密码然后运行就好了import requestsimport reimport csv# username = ''# password = ''def get_post(username,password):info = {'username': username,'password': password}headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36',}print('[INFO]:正在进行Cookie获取')rs = requests.session()url_cookie='https://wfw./a_scu/api/sso/check'r = rs.post(url_cookie, data=info, headers=headers, timeout=3).json()if(r['m']=='操作成功'):print('[INFO]:Cookie获取成功')else:print('[ERROR]:Cookie获取失败,请检查密码账号是否正确以及网络情况')return 0url_put= 'https://wfw./ncov/wap/default/index'r1 = rs.get(url_put, headers=headers)info = re.findall(r'.*?oldInfo: (.*),.*?', r1.text)data = eval(info[0])#print(data)try:print('[INFO]:正在进行填报')url_post='https://wfw./ncov/wap/default/save'Return = rs.post(url=url_post, headers=headers, data=data)Return = Return.json()print("[INFO]:今日填报结果:" + Return['m'])except:print("[ERROR]:填写失败或填写内容已改动,本次请手动填报")def info():try:print('[INFO]:正在进行信息读取')with open("info.txt", "r", encoding="utf-8", newline="") as csvfile:reader = csv.reader(csvfile)info = []for Row in reader:info.append(Row)except:print('[ERROR]:读取信息失败')return 0if(info==None):print('[ERROR]:信息未成功写入,请重新写入')return 0print('[INFO]:信息读取成功')return infoif __name__ == "__main__":print("=" * 500)print("[INFO]:欢迎使用zack一体化自动填报程序")info=info()get_post(info[0],info[1])print("=" * 500)