University Academic Affairs System API(Google说的), 简称UAAS-API
使用Koa.js构建的部分高校教务系统 API
通过跨站请求伪造(CSRF),伪造正常请求获取数据,本项目仅供学习,请勿使用于商业项目。
请注意,如果你的学校没有在支持名单中,可以使用测试号进行测试! 测试号为 stuId: test,password: 123456
目前已适配青果系统、强智系统,其他系统待补充。
- 广东白云学院 10822 青果
- 江西软件职业技术大学 13776 强智
- 新疆理工学院 13558 强智
- 广州番禺职业技术学院 12046 强智 【未完全支持】
- 登录
- 获取课表
- 获取成绩
- 获取原始成绩(青果系统)
- 获取考勤
NodeJS 16+
git clone https://github.com/danbaixi/UAAS-API.git
cd UAAS-API
npm install
拷贝env.example
,重命名为.env
,SCHOOL_CODE
填学校代号,默认为test
默认使用3000
端口,可自行设置.env
中的PORT
npm start
首先要了解你们学校教务系统使用的是哪个第三方系统,有青果
、强智
、方正
等系统,不同系统的爬虫程序不一样。
主要思路:使用axios
模拟请求教务系统一些接口,通过cheerio
解析网页数据,处理数据后以json
格式返回。
public/school.json
存放学校列表,需要填写一些教务系统信息
controllers
和routes
目录存放控制器和路由,所有学校都一样,不需要更改。
services
存放爬虫服务,以学校代码为文件名,分别要实现login
、getCourseList
、getScoreList
、getAttendanceList
等方法。
requests
存放爬虫请求列表,以学校代码为文件名,使用了util/request.js
提供的createRequest
方法去创建爬虫请求,供 services
使用。
util/responseInterceptors.js
存放响应拦截,主要用于判断token失效
视频正在录制,待补充...
接口使用 ApiFox 管理,请访问在线文档阅读 API