今日校园思路 HFUT XQ

前言

早在疫情开始的时候,我就已经开始编写今日校园打卡的代码,不知不觉已经到了第三个版本了。第一个和第二个版本,随着教务系统和今日校园的更新已经废除。每次编写代码,都给我带来或多或少的收获,本来以为第三版本的编写不会给我带来多大的收获,可出乎意料的是,我仍然收获不少的知识,可见真的不能小瞧任何一件事,做与想往往大相径庭!切勿眼高手低!

第一步抓包

一开始准备用手机抓包,奈何今日校园最新的版本已经不能用传统的抓包方式,手机root?出于安全性和保修方面的考虑,我还是不敢给手机root。无奈正准备放弃之时,我的好兄弟告诉了我一个好消息——有网页版的提交页面!Good,这样就能开始项目了!(网页抓包,略过咯。)

第二步分析提交数据

最开始写自动提交代码脚本时,一般不从自动登录开始,除非你必须完成这个自动任务,否则duck不必。从网页端点击保存,一个saveMrbpa的包出现了,查看包,发现提交的数据为
在这里插入图片描述
其实最开始的时候我没有分析这个数据,因为我无理解法数据里面的字母缩减,而且数据太多了,太乱了,看的眼睛疼,所以就直接去看别的网络包了。但实际上,如果我们分析了这个提交数据,会非常有利于我们接下来寻找数据构造包,或者说理解整个页面究竟干了什么。

我用上帝视角带大家看看这个数据包的结构。显然data里的数据是我们的关键信息,用一个字典框起来了,这个字典里有两个key-value即元素,两个key值分别是JBXX与MRQK。如果你能理解这两个值的含义,那么这个数据包你已经理解80%了。JBXX是基本信息,MRQK是每日情况,这样你大概能理解两个value了吧,两个value对应两个字典,两个字典里分别放着你的基本信息和每日填报情况。(Value里的字母缩减任然是中文名字拼音首字母的缩写,你品,你细品)

第三步获取提交数据

分析玩提交的数据后,接下来我们要获取提交的数据——JBXX、MRQK。查看抓取的数据包,有两个包getJbxx.do和mrqkbd.do与JBXX和MRQK很相似,基本断定数据都在这两个包中!然而事与愿违,还是出了点小问题,不过最后完美解决获取到我们需要的数据(自行实践,自有体会)。值得注意的是我在寻找MRQK里的WID时,翻遍了所有的数据包都没有它的身影,一时间我进行不下去了。好在我在进行模拟登录获取cookie时(这一步这篇博客我没有讲述),心中留下的小疑问竟然帮助了我大忙(这难道就是冥冥之中早已注定?),我大胆猜测WID就在cookie里,果不其然,最终解决了WID这个数据。(这是我整个过程中最兴奋的一点,也是我感慨最多的一点)

-----------8月13日-----------
翻车了,cookie里的并不是wid,直接黄码了,凉凉~~

第四步模拟提交并进行微调

将写好的代码运行,并查看今日校园疫情通报是否发生改变。提交之后确实发生了改变,本体为大功告成,却被通知群里的信息给震惊了,竟然没有定位地址,于是我打开今日校园查看,确实没有定位地址的显示。无奈之下我只能手动提交一下,等待明天在调整了。调整的步骤是少不了了,第二天我又开始分析数据包,最后发现了问题所在,最终解决了问题(由于涉及到疫情还是不讲太具体了)。OK,大功告成。

第五步云端部署

写的脚本不可能一直都在自己电脑上运行吧,最后一步,便是将代码部署在云端上,这里有很多选择,我曾经用过云服务器挂过脚本,可惜白嫖的时光总是短暂。这次我选择腾讯云函数,将我的代码部署云端,这样我的电脑就不用一直开机了。如果读者的电脑能一直保证开机,那么我建议可以了解下任务计划,希望对你能有所帮助,至此,所有步骤均完成。

结语

由衷感谢能够一直看到这的读者,这些就是完成今日校园自动打卡1.3版本的一些心路历程。这篇博客并没有涉及技术分享,仅仅只是些思路上的讲解,真心希望字里行间的话能给为读者带来一丢丢思路上的突破。再次感谢!

感想

谈一谈写这篇博客的目的吧。这篇博客目的很单纯,仅仅是为了做一下笔记方便回忆,并锻炼自己的语言组织能力,毕竟会讲才是真的会了。在写这篇博客的过程中,也是发现自己的语言组织能力的确欠缺,有很多奇妙的体悟,却无法向读者道明,实在可惜。决定了,以后要经常写博客锻炼锻炼自己。

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值