失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > python实现易校园自动打卡教程

python实现易校园自动打卡教程

时间:2023-09-15 12:43:09

相关推荐

python实现易校园自动打卡教程

准备

软件版本(请自行百度)

HttpCanary:v9.9.9.9安卓版

可以用burpsuite,findler等其他的Windows抓包软件代替,自行搜索如何用电脑抓手机的包。

易校园:v2.5.9

易校园一定要使用低版本的!!!可以去豌豆荚下载历史版本,找到2开头的最后一个版本就行。

最新版用了ssl pining,抓https的包很麻烦!

http Canary配置

打开http canary,界面如图

按照提示安装证书

部分手机可能无法自动弹出安装,比如我的手机。。。。参考以下步骤:

1、点击左上方菜单

2、点击【设置】

3、点击【SSL证书设置】

4、点击【导出HttpCanary根证书】

5、选择第二个

6、安装刚刚导出的证书

开始

完场上述准备工作

进入易校园打卡界面,等待定位完成,划到底部【先不要提交】

这样做是为了快速找到提交的包

此时打开HttpCanary,点击右下角的小飞机,开始抓包

回到易校园,点击提交

回到HttpCanary,再次点击右下角小飞机,停止抓包

从下往上找出【POST /marketing/health/doDetail】

注意别找错了,一定是doDetail

找到之后点进去,点击请求包

点击预览,里面的数据就是你刚才打卡提交的数据,如下图(我的易校园又被强制更新了,抓不了包了,没有源数据包的截图,将就着看吧)

代码如下,修改填入你自己的参数

import requestsfrom requests.api import headimport yagmaildef eMail(email_to, email_title, email_content):# 邮件用户mail_user = '你的邮箱'# 授权码mail_key = '授权码'# smtp服务器mail_host = ''try:mail_server = yagmail.SMTP(user=mail_user, password=mail_key, host=mail_host)mail_server.send(email_to, email_title,email_content, attachments=None)mail_server.close()return Trueexcept Exception as e:print(e)return Falsedef DoDetail(json):# 输入打卡信息data = json# 添加打卡信息data['address'] = '根据左边的变量名,去数据包找相同的参数'# 填写Tokan信息data['uuToken'] = '同上'# 填写Useriddata['loginUserId'] = '同上'# 填写学校iddata['loginSchoolCode'] = '同上'# 填写学校名称data['loginSchoolName'] = '同上'# 填写体温信息data['temperature'] = '36.3'# 填写打卡地址data['longitudeAndLatitude'] = '同上'# 填写打卡地址data['locationInfo'] = '同上'requests.packages.urllib3.disable_warnings()# 请求易校园接口response = requests.post("/marketing/health/doDetail", headers=headers, data=data, verify=False)return response.json()# 获取useriddef GetDetail(userid):data1 = {'userId': userid}requests.packages.urllib3.disable_warnings()response = requests.post("/marketing/health/getDetail", headers=headers, data=data1, verify=False)return response.json()# 伪造请求头if __name__ == '__main__':headers = {'User-Agent': 'Mozilla/5.0 (Linux; Android 11; MJ10C Build/RP1A.20.011; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/98.0.4758.101 Mobile Safari/537.36 Html5Plus/1.0 (Immersed/34.909092) ZJYXYwebviewbroswer ZJYXYAndroid tourCustomer //2.5.9/c9dcace70d408476','Cookie': 'shiroJID=be09980c-ace6-4350-ba63-38f441029802'}# 填写Useridjson = GetDetail('填写你的Userid')if(json['success'] == True):json = DoDetail(json['data'])print(json)if(json['success'] == True):eMail(email_to='填写你的邮箱',email_title='健康打卡成功!', email_content=str(json))print('成功')else:eMail(email_to='jenchoi413@',email_title='健康打卡失败!', email_content=str(json))print('失败')

调试代码没问题之后,把代码挂到云服务器上,设置定时任务即可

写在最后

啊呀,写这种教学博客真的好麻烦!!!我也是第一次写

参考:/news/txtlist_i174599v.html

https://ylcao.top

如果觉得《python实现易校园自动打卡教程》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。