node.js框架下的群机器人关联学校教务系统
标签搜索

node.js框架下的群机器人关联学校教务系统

幻鹤
2022-11-05 / 0 评论 / 1,307 阅读 / 正在检测是否收录...

起因

看到有人将q群机器人和学校宿舍的电费余额相关联,本来我也想搞个自己学校的宿舍电费关联的,无奈垃圾学校的系统崩溃了,就尝试绑定学校的 教务系统

功能进度

拿到教务系统课表接口
对接口参数解析,获取,post模拟
使用js对接口进行psot,成功拿到课表json
使用js对接口返回的json解析
实现每次上课前5分钟判断是否有课,并发送消息提醒
加入课程会议号提醒功能,有会议号的课自动带上会议号
优化,开源

初始思路

研究了一下学校教务系统,给出思路如下

  1. 抓包登录,获取登录的接口,拿到tocken
  2. 用tokcen换取请求教务系统的cookie
  3. 抓包发现获取课表只需要一个参数,两个cookie。就可以拿到课表的json
    la3d0mni.png
  4. 通过获取到的json,解析拿到课表信息,在用node.js实现固定时间运行,提醒上课时间,还可以把老师的固定会议号发出来
  5. 还可以对下面接口进行抓包实现更多功能
    功能

实现

对登录抓包时就发现学校登录使用了加密
la3bbxu1.png
每次的表单的密码和lt都会变动,后面发现ck中有cas字段,说明加密方式是cas,那我技术还不够,cas加密就放弃了,so, 登录功能寄


因为登录有一个记住我,发现系统是将ck过期时间设置2099年,所有就是差不多永久ck,只要不登录,因为这个接口是今日校园的接口,一般不会登录,所以可以直接 使用cookie来代替账号密码 ,简单又安全。

后面就是写插件代码


进行post模拟,拿到固定参数
la3cxy69.png

通过node-fetch成功模拟post拿到json(开始没加Content-Type一直报错,我以为是ck的问题,找了半小时的bug,把表头加上就一下就好了)
la3hw2fy.png

...未完待续

3

评论 (0)

取消