Skip to content

zeroduhyy/iclass_buaa

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

iClass BUAA 签到系统(支持 SSO 登录)

免责声明

本项目为开源代码,使用者需自行选择是否使用,并应遵守北京航空航天大学的相关规定。因使用本项目产生的一切后果均由使用者本人承担。

项目简介

本工具基于 iClass 平台的签到二维码 URL 进行生成与管理,方便同学们随时扫码签到。采用基于 Web 的交互方式,支持 学号 + BUAA SSO 密码 登录。

主要特点

  • SSO 登录:通过 BUAA 校园统一身份认证 (SSO) 登录,获取用户信息与课程列表。
  • 自动获取课程:登录后自动抓取当前学期所有课程。
  • 按日期排序:将签到课程按日期排序,方便查找。
  • 实时二维码:生成与 iClass 签到系统兼容的实时二维码。
  • 安全存储:登录信息使用会话(Session)存储,密码不会保存。

安装依赖

请先安装所需依赖:

pip install -r requirements.txt

或者手动安装:

pip install Flask requests

使用步骤

  1. 运行应用服务器:
python app.py
  1. 在浏览器中访问 http://localhost:5000

  2. 在登录页面输入学号和 BUAA 密码

  3. 登录成功后,系统自动获取所有课程信息

  4. 在课程列表中选择需要签到的课程

  5. 点击“生成实时二维码”按钮

  6. 使用 iClass App 扫描生成的二维码完成签到

技术说明

  • 本项目基于 Flask 框架开发
  • 签到二维码 URL 格式:
http://iclass.buaa.edu.cn:8081/app/course/stu_scan_sign.action?courseSchedId={课程ID}&timestamp={时间戳}
  • 系统自动每 2 秒更新一次二维码,确保时间戳保持最新
  • 登录采用 SSO 会话认证,使用 requests.Session 管理 cookie 和 token

常见问题

Q: 为什么需要输入密码? A: 系统使用 BUAA SSO 登录,必须验证身份以获取课程详情。

Q: 登录后看不到任何课程怎么办? A: 可能是当前学期没有课程,或者学号/密码输入错误。请确认信息正确。

Q: 使用此工具签到会被发现吗? A: 从技术上讲,签到 URL 与正常签到生成的 URL 完全一致。但请注意遵守学校规定,自行承担使用责任。

注意事项

  • 本项目仅用于个人学习和研究交流,请勿用于违反学校规定的用途。
  • 系统会话(Session)存储登录信息,关闭浏览器或清除 Cookie 后需重新登录。
  • 若 iClass 系统接口更新,可能需要调整代码才能继续使用。

希望本工具能为你的学习和签到管理带来便利!🚀

About

北航上课签到二维码

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published