一个基于智强教务 的大学教务接口获取 和 教务系统课表采集工具
这是一个基于Python的异步爬虫脚本,以CDUT🦕为例。 用于登录CDUT教务系统并批量获取指定教室的课表信息。脚本采用异步编程模式,提高了数据获取效率,适用于需要批量查询教室使用情况的场景。
- ✅ 异步编程:使用
asyncio和httpx实现异步HTTP请求,提高爬取效率 - ✅ RSA加密:自动获取公钥并对密码进行RSA加密,确保登录安全
- ✅ 自动登录:模拟CAS单点登录流程,自动处理重定向和表单提交
- ✅ 批量获取:支持同时获取多个教室的课表信息
- ✅ 本地保存:将每个教室的课表以HTML格式保存到本地
pip install httpx[http2] pycryptodome-
修改个人信息:在
main()函数中配置用户名和密码username = "你的学号/电话" password = "你的密码"
-
配置查询参数:
rooms:需要查询的教室列表,每个教室包含jsid(教室ID)、jsmc(教室名称)、jsh(教室号)等信息xnxq01id:学年学期ID,格式如"2025-2026-1"表示2025-2026学年第一学期
-
运行脚本:
python jwSpider.py 或者在IDE中直接运行
- 隐私安全:请不要将包含个人账号密码的代码公开分享
- 使用频率:请勿高频次运行脚本,避免给教务系统服务器带来过大压力
- 依赖安装:确保正确安装所有依赖库,特别是
pycryptodome而非Crypto - 版本兼容:建议使用Python 3.7或更高版本
📕本项目采用 GPL-3.0 + CC BY-NC-SA 4.0 许可证开源
- Github @ mloong
- Github @ KawasakiKusako