本项目为开源代码,使用者需自行选择是否使用,并应遵守北京航空航天大学的相关规定。因使用本项目产生的一切后果均由使用者本人承担。
本工具基于 iClass 平台的签到二维码 URL 进行生成与管理,方便同学们随时扫码签到。采用基于 Web 的交互方式,支持 学号 + BUAA SSO 密码 登录。
- SSO 登录:通过 BUAA 校园统一身份认证 (SSO) 登录,获取用户信息与课程列表。
- 自动获取课程:登录后自动抓取当前学期所有课程。
- 按日期排序:将签到课程按日期排序,方便查找。
- 实时二维码:生成与 iClass 签到系统兼容的实时二维码。
- 安全存储:登录信息使用会话(Session)存储,密码不会保存。
请先安装所需依赖:
pip install -r requirements.txt
或者手动安装:
pip install Flask requests
- 运行应用服务器:
python app.py
-
在浏览器中访问 http://localhost:5000
-
在登录页面输入学号和 BUAA 密码
-
登录成功后,系统自动获取所有课程信息
-
在课程列表中选择需要签到的课程
-
点击“生成实时二维码”按钮
-
使用 iClass App 扫描生成的二维码完成签到
- 本项目基于 Flask 框架开发
- 签到二维码 URL 格式:
http://iclass.buaa.edu.cn:8081/app/course/stu_scan_sign.action?courseSchedId={课程ID}×tamp={时间戳}
- 系统自动每 2 秒更新一次二维码,确保时间戳保持最新
- 登录采用 SSO 会话认证,使用 requests.Session 管理 cookie 和 token
Q: 为什么需要输入密码? A: 系统使用 BUAA SSO 登录,必须验证身份以获取课程详情。
Q: 登录后看不到任何课程怎么办? A: 可能是当前学期没有课程,或者学号/密码输入错误。请确认信息正确。
Q: 使用此工具签到会被发现吗? A: 从技术上讲,签到 URL 与正常签到生成的 URL 完全一致。但请注意遵守学校规定,自行承担使用责任。
- 本项目仅用于个人学习和研究交流,请勿用于违反学校规定的用途。
- 系统会话(Session)存储登录信息,关闭浏览器或清除 Cookie 后需重新登录。
- 若 iClass 系统接口更新,可能需要调整代码才能继续使用。
希望本工具能为你的学习和签到管理带来便利!🚀