- 本脚本获取打卡数据的方式不被官方支持,随时可能失效。
- 本脚本仅用于提醒同学打卡,请勿用作其他用途。
- 原则上我不会提供任何技术支持,请自行探索。
自动获取未打卡数据,并在 QQ 群 @ 对应的同学。推送时间为 12,15,18,19,20,21,22。
正常情况下只有辅导员才能获取到打卡数据,不管是内网网站,还是 We 重邮。内网无法在服务器运行,We 重邮需要用辅导员微信去抓包。打卡时,我通过抓包发现,打开 We 重邮打卡页面时会发送一个 POST 请求,得知此人是否打卡,从而在前端阻止重复打卡,这其实有点蠢,不过倒是提供了一个判断是否打卡的接口。
然后就把所有人的学号拿进去扫描一遍就行了,该 POST 请求目前没有限制是否是本人,不排除以后会。如果 We 重邮的人看到了,建议自己好好想想为什么会有这么个脚本。
为了减少每次扫描的次数,需要将没有打卡的数据存储下来。由于我是部署到了腾讯云函数,只能使用在线数据库,我这里用的维格表,相当于数据库。表头如下,数据自行获取。数据类型
{
id: string,
name: string,
qq: string,
clocked: boolean
}
我这里使用的 Qmsg,一个 Get 请求即可将信息推送到 QQ 群,十分方便。你需要做的就是获取每个人的 QQ 号一一对应。
- 初始化环境
> git clone https://github.com/4CQUPT/CQUPT-ClockIn-Notify.git > cd CQUPT-ClockIn-Notify > mv src/option.ts_ src/option.ts > pnpm i
- 获取数据,建立数据库
- 修改 option.ts,具体细节我已写明
- 打包,上传到腾讯云函数
可以直接上传
pnpm build
dist
文件夹