/autoSubmit

北京大学疫情出入校自动填报

Primary LanguageGo

autoSubmit

Go

本项目通过读取环境变量中的学号和密码,依次执行:

  • 登录portal获取portalToken
  • 通过token登录portal获取cookie
  • 带着cookie访问出入校报备,获取simsoToken
  • 通过simsoToken登录simso系统,获取sid
  • 带着sid访问出入校报备小程序并填报

usage

强烈建议使用自动执行

github actions 自动执行

配置文件在go.yml,目前配置为每天北京时间8点执行一次。

github actions 配置

  • fork本项目
  • 在自己的repo下Settings/Secrets中设置USERNAME和PASSWORD,分别为学号和密码
  • fork的项目会默认关闭actions,需手动点击repo页的actions以enable

local run

build

建议使用go >= 1.13

git clone https://github.com/yzs981130/autoSubmit.git
cd autoSubmit
go build

run

  • 环境变量USERNAME:学号
  • 环境变量PASSWORD:密码
USERNAME=xxx PASSWORD=xxx ./autosubmit

如果成功,会显示如下log:

portal登录成功
simso登录成功
提交成功
提交成功

两个提交成功分别为出校和入校备案成功,如果日志不同则可能失败,请在issue中反馈;后续也可能会添加debug信息和错误处理

TODO

热烈欢迎pr!!

  • error handling
  • code structure refactor
  • unit test