码迷,mamicode.com
首页 > 其他好文 > 详细

今日校园模拟打卡

时间:2021-07-05 16:46:17      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:uil   因此   instance   加密   like   loading   post   推送   sig   

继上次的模拟校园门户登录之后,发现主要在header中存在ua判断字段"sec-ch-ua-mobile":"?1",在没设定此字段时获取到登录的cookie是没办法进行打卡操作的。因此在请求基础headers中带上参数"sec-ch-ua-mobile":"?1",便可以实现打卡操作了。

代码如下:

session.headers = {
            "User-Agent":‘‘‘Mozilla/5.0 (Linux; Android 11; M2012K11AC Build/RKQ1.200826.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/90.0.4430.210 Mobile Safari/537.36  cpdaily/9.0.0 wisedu/9.0.0‘‘‘,
            "sec-ch-ua-mobile":"?1"
        }

此时再采用上篇文章提到的模拟ASE加密方式登录,便可以进行打卡了,登录模块的业务不再赘述,可以参考上篇博客,下面讲一下如何提交打卡请求。

首先,完成登录操作后,需要获取打卡请求的接口以及接口所需参数,这里用到黄鸟来针对app进行抓包,通过分析网络请求来获取请求接口及相关参数,iso可以使用网球或者Thor。
技术图片
开启抓包后,进入打卡应用页面抓取网络请求,对报文进行逐步分析,通过筛查可以确定出打卡任务查询的api,接口uri也是便于理解。
技术图片
总览处可以看到请求方法接口url以及相关状态,在确定接口内容时可以切换到响应页分析响应页的数据,来确定接口的作用,
技术图片
根据接口返回数据分析,可以得出接口返回的签到任务信息。因此可以采用python向接口发请求来获取签到信息,切换到请求页来分析接口入参需要哪些数据,此接口入参没有带数据此处就不给出截图。同理采用同样方法,也可以获取到签到任务的url,这里直接给出任务的相关接口及入参

#打卡接口 
#请求方式 POST
url = "https://***.campusphere.net/wec-counselor-sign-apps/stu/sign/submitSign"
#递交参数json
        data = json.dumps({
        "abnormalReason": "",
        "position": "江苏省南京市江宁区行知大道",
        "longitude": 118.91106677453745,
        "isNeedExtra": 1,
        "latitude": 31.899435298851706, #经纬度
        "isMalposition":0,
        "signVersion": "1.0.0",
        "extraFieldItems": [
         {
             "extraFieldItemWid": 715253,
            "extraFieldItemValue": "36.3" #体温信息
         }
            ],
            "signPhotoUrl": "",
            "uaIsCpadaily":"true",
            "signInstanceWid": sWid #此参数需要通过签到任务获取
        })
#查询签到任务
#unSignedTasks 中获取字段 singnInstanceWid
#
url2 = "https://***.campusphere.net/wec-counselor-sign-apps/stu/sign/getStuSignInfosInOneDay"

此处准备工作就基本完成

都是一些基础操作,这里就不给出代码了。为了保证不漏卡,需要引入辅助道具,首先阿里的函数计算可以通过cron表达式来准点触发,这样就可完全解放双手,其次为了保证每天都打卡了,利用server酱来及时告知打卡状态,在打卡环节中通过消息将打卡结果推送到微信,这样便可以确保不漏签了。

完成以上这些,就可以持续霸榜校园了,不过打卡
技术图片
还有一些注意事项后续再补充吧。

今日校园模拟打卡

标签:uil   因此   instance   加密   like   loading   post   推送   sig   

原文地址:https://www.cnblogs.com/fengby/p/14964279.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有
迷上了代码!