简要介绍
一个针对NKU-EAMIS(NKU Education Affairs Management Information System, 南开大学教学管理信息系统)设计的命令行程序。目前具有查询成绩、课表、考试安排以及选课辅助的功能。有喜欢这种命令行风格的同学可以玩玩试试。
使用效果(查询课表和考试安排)如下图:
安装和使用
程序已经发布到PyPI上了,所以只需pip就可以方便地安装,还无需考虑依赖问题.
在shell中执行命令 pip install nkueamis
进行安装.
安装后在终端中直接执行 nkueamis 参数
即可使用.
如果不想通过pip安装在系统,可以在zawnpn/nkueamis中下载或者clone到本地,直接执行python nkueamis.py 参数
即可.(如果选用这种方式,需确保模块的正常依赖关系,否则会报错)
程序会保持更新,若要更新,运行 pip install nkueamis --upgrade
即可(必要时加上--no-cache-dir
参数避免从本地缓存更新).
TODO
选课辅助(2017/07/08更新: 已经加入选课功能,仅供测试,谨慎使用)
使用方法
nkueamis -g <course_category> [-u <username> -p <password>]
nkueamis -c [-s <semester>]
nkueamis -c [-u <username> -p <password>]
nkueamis -c -s <semester> -u <username> -p <password>
nkueamis -e [-s <semester>]
nkueamis -e [-u <username> -p <password>]
nkueamis -e -s <semester> -u <username> -p <password>
nkueamis --course-elect
参数说明
course_category 要查询的课程类型(只能是A,B,C,D,E的组合,不区分大小写)
semester 要查询的学期参数,必须是`[Year]-[Year]:[Semester]`的格式
username 教务系统的用户名
password 教务系统的密码
选项说明
-g grade query
-c course query
-e exam query
-s semester
-u username
-p password
--course-elect elect course
-h, --help guidance
用法举例
nkueamis -c 查询课表
nkueamis -g BCD 查询BCD类的课程成绩(需要按提示输入用户名和密码)
nkueamis -g ABCDE -u your_username -p your_password 查询ABCDE类的课程成绩
nkueamis -c -s 2016-2017:2 查询2016-2017学年第2学期的课程表
nkueamis -e -u your_username -p your_password 查询当前系统默认学期的考试安排
nkueamis -e -s 2016-2017:2 查询指定学期的考试安排
需要说明的是,查询成绩和课表时,选项-u <username> -p <password>
不是必须的,一般来说更推荐不带这两项参数进行查询,因为按提示输入密码时密码是不可见的,更安全。而增加这种查询方式是考虑到Linux命令行程序的哲学,能更简洁就能做到的事情,就更简洁地搞定。一条命令查询的话,可以方便复用或者其他程序调用。
注意:在选课系统中,伯苓班的课程分类只有四类(BC为一类),在本程序的设计逻辑下,BC类被统一归为了C类,为确保程序逻辑正确,伯苓班的同学在查询成绩时,-g参数后不要带上B字符,否则可能无法成功分类。例如查询BCD成绩时只输入CD即可。
更新
2017/07/08
加入选课辅助功能,仅供测试,请谨慎使用
其他
感谢 @谢梓龙 同学在测试和开发上提供的帮助。
iOS用户可以通过Workflow在移动端使用NKU-EAMIS,具体情况请阅读 「NKU-EAMIS for iOS(Workflow)」
此外,基于此项目还开发了微信小程序版的教务助手,具体情况见NKU-EAMIS_MiniApp
项目已开源,欢迎交流,互相学习。
Github地址:zawnpn/nkueamis
PyPI地址:nkueamis