程序聚合 软件案例 香港中文大学(深圳)音乐学院琴房自动预定脚本-MUS Booking

香港中文大学(深圳)音乐学院琴房自动预定脚本-MUS Booking

2025-11-18 03:22:42
行业:生活服务
载体:Windows应用、Mac应用
技术:Python

业务和功能介绍

## 立项背景与目标
MUS Booking System 面向香港中文大学(深圳)音乐学院琴房预约,解决官方系统登录繁琐、网络敏感、热门琴房成功率低等问题。项目提供生产级(v2.10.0)自动化工具,在 VPN、校园网或 Reqable 环境下一键完成登录、批量与定时抢房,在满足校内安全要求前提下提升成功率和体验。

## 软件功能与核心模块

### 自动登录与 Cookie
通过 GUI 一键登录,自动填写学号与密码、提交表单并抓取 Cookie,保证身份合法和会话稳定。

### 智能网络适配
自动识别校园网/VPN、Reqable(127.0.0.1:9000)及系统代理,也可在 Cookie 面板手动检测,确保对 SSL 要求严格的校内接口在不同网络下可访问。

### 定时与批量预订
支持“立即执行”与“定时执行”,可将多个琴房与日期组合成一个任务并按优先级依次尝试,一旦成功即停止;超过 2 小时的请求会自动拆分为多个 2 小时时段,以符合教务规则。

### GUI 客户端与预订引擎
桌面端由 src/GUI.py 提供主窗口、设置、Cookie、自动登录与任务管理等界面;核心逻辑由 src/main.py 中的 CrazyRequests 与 book() 完成,封装 SSL 容错、代理路由、统一 UA/Cookie 头及琴房 ID 映射,并在失败时返回可读错误信息。

### 配置与质量保障
config.yaml 统一保存启动时间、执行模式、代理与 Cookie 信息、用户档案及请求列表,便于在“单次抢房/连续预约”等场景间复用。测试脚本覆盖网络、SSL、Qt 代理、预约接口和自动登录,配合 PySide6、WebEngine、PyYAML、requests 等依赖,保证主要平台的一致行为。

## 业务流程与功能路径

###准备:下载并解压发行包,在“设置”中填写学号、密码、联系方式等,可通过“自动检测”完成 VPN/代理适配和配置初始化。

###建模:在主界面点击“+ 添加一组预定请求”,选择琴房、日期和时间段,可设置多个备选方案,自动写入 config.yaml。

###执行:选择立即或定时启动后,AutoLogin 获取最新 Cookie,BookingWorker 依次调用 book() 提交请求,并按规则进行 2 小时拆分与“成功即停”。

###结果与复盘:日志实时显示成功记录及失败原因(如 Cookie 过期、网络异常、放号竞争失败等),用户可据此排查网络或更新 Cookie,并结合历史记录优化后续策略。

综合来看,MUS Booking System 通过可视化配置界面、稳健预订引擎、智能网络适配及完善测试文档,构建了“准备 → 建模 → 执行 → 反馈与复盘”的闭环流程,有效降低琴房预约的人力成本和失败风险。

项目实现

## 整体架构与设计思路
项目按 MVC 分层:PySide6 组件树做 View,MainWindow 负责信号-slot 调度与任务编排;config、workers 承载数据与业务,配合 requests 和自研 CrazyRequests 组成网络层对接订房接口。目录按“核心逻辑 + GUI 组件 + 对话框 + 工具层”拆分,旧版 GUI.py 与新模块并行,便于重构排错。

配置用 dataclass + YAML,用于持久化用户数据及 UI 默认值、表单回填。BookingWorker 将定时器、拆单和日志信号放入 QThread,避免界面阻塞。CrazyRequests 自动处理 SSL、代理和 Cookie,并与 ProxyDetector 联动,使“开始”按钮一键串起 Cookie 捕获、请求构造与日志展示。

##模块与技术栈
View 由 widgets、dialogs 组成;Controller 为 MainWindow;Model / Service 为 AppConfig、RequestItemData、book()、timer_run()、BookingWorker,对订房接口做封装与调度。通过 PyInstaller 多文件打包和自定义 spec 生成约 207MB 的开箱即用发行版。主要依赖 PySide6/QtWebEngine、requests/CrazyRequests、PyYAML/dataclasses 及系统接口;tests 覆盖网络、SSL、代理和自动登录回归。

##坑与难点及解决方案
1)SSL 握手失败
AnyConnect VPN 下接口对 requests 持续抛出握手失败,而 Qt WebEngine 与 Reqable 可正常 TLS。最终方案:自动登录走 WebEngine 直连,请求统一经 Reqable 代理;ProxyDetector 按“直连 → Reqable → 系统代理”回退,并将结果落盘,重启可复现稳定路径。

2)自动获取 Cookie 与降级
通过 AutoLoginDialog 内嵌 QtWebEngine,集成浏览器控件,在捕获成功 URL 后延迟提取 Cookie,同时将 Reqable 写入 QtNetwork.QNetworkProxy,保持与流程代理一致;缺少 WebEngine 时提供手动粘贴 Cookie 的降级,并校验关键字段,避免写入无效配置。

3)多线程定时抢房
热门琴房需在时间窗口内 POST 并拆分时段。BookingWorker 将等待与请求循环放入 QThread,通过信号回传日志和完成事件,防止卡顿;timer_run() 统一“立即/定时启动”的等待逻辑,只靠延迟区分;时段拆分、防重入与批量备选顺序集中在 worker 中,便于调试扩展。

示例图片视频


CCA
5天前活跃
方向: 后端-C++、人工智能-大模型和多模态、
交付率:100.00%
相似推荐
公安系统管理
1.项目背景​ 当前公安监所面临着在押人员管理精细化不足、安防防控智能化水平偏低、业务流程协同效率不高、数据价值挖掘不充分等挑战。为响应 “智慧公安” 建设号召,落实监所 “安全、规范、高效” 管理要求,构建 “科技赋能、数据驱动、全流程管控” 的现代化监所管理体系,特启动公安监所实战平台项目。 2.核心功能模块 智能安防模块 在押人员管理模块 管教工作模块 决策分析模块
AI个性化学习平台
面向用户需要复习课程、掌握知识点备考的大中小学学生需要个性化学习规划、内容解析的 社会自主学习人士需要AI 增强课堂教学、学生测评的教育培训机构 多模型AI 支持系统:支持国内5 家主流大模型调用,可按需动态切换,确保服务高可用 性;支持所有基于OpenAISDK 的大模型,现已内置DeepSeek、文心一言、星火、ChatGLM、Moonshot Prompt(提示词)管理系统::可视化管理AI 提示词模板,支持版本控制和A/B 测试;5 分钟 TTL 缓存,提升性能;系统自动注入Prompt 提高AI 调用可用性;多场景支持:支持不同场景的 Prompt 模板(系统提示、出题组卷、批改) 。 文件上传与学习计划生成:用户上传学习资料、笔记(PDF、Word、PPT、TXT、MD)文 件,AI 自动解析内容并生成个性化学习计划 AI 自动评测系统::AI 根据学习主题或者设置的个性化参数(学段、考试科目、考试时 间等)自动生成测验题目甚至实现智能组卷,支持在线答题、自动批改和错题讲解 知识图谱系统:将学习内容转化为可视化知识卡片图谱,展示知识点之间的依赖关系, 帮助学习者理解知识结构,并以此推荐学习资源 学习可视化与成长报告:多维度(统计卡片、折线图、饼状图、弱项分析)展示学习 进度和成绩,生成PDF 学习报告。 管理后台系统:数据大屏仪表盘统计展示系统后台信息,支持模型配置、Prompt 管理、 用户管理、系统配置。
头盔护卫AI——基于YOLOv5的头盔识别系统
在工业和建筑领域,头盔是保护工人免受头部伤害的首要安全装备。在交通、体育、娱乐等领域,头盔都是我们不可或缺的保护伙伴,确保我们在各种环境下的安全。通过我们的头盔识别系统,我们能够更好地监控和促进头盔的正确使用,进一步提升公共安全。通过yoloV5,做头盔识别系统。
secomm电子商务平台-网上书店
一、立项背景和目标 在数字化消费趋势下,线上购物成为主流,但现有电商平台对书籍、文创等垂直品类覆盖不足,存在交互繁琐、加载慢等问题,线下书店又受地域限制。基于此,“我的书店” 电商项目应运而生,采用前后端分离架构,以解决用户精准购物需求,适配多端使用场景。 项目目标清晰:用户层面,打造界面友好、操作便捷的平台,实现商品浏览、搜索、购物车管理等功能;技术层面,用 Vue 3、Spring Boot 等主流技术搭建可维护架构,验证技术应用价值;业务层面,完成基础电商流程闭环,为后续拓展预留空间。 二、软件功能与核心模块 软件整体围绕 “找货 - 选货 - 管货” 核心场景,涵盖商品展示、分类筛选、实时搜索、购物车管理、分页浏览等功能。 产品展示模块(HomePage.vue)是核心,左侧侧边栏提供五大分类导航,选中分类高亮显示,主体用响应式网格展示商品卡片,含图片、名称等信息,还支持分页调整。 实时搜索模块带 300ms 防抖,避免无效请求,搜索范围覆盖商品多字段,且与分类协同,仅显示所选分类下匹配商品,提升精准度。 购物车管理模块(cart.js)基于 Pinia,支持添加、移除、更新商品数量及清空操作,通过计算属性实时统计总数量和价格,与产品展示模块无缝衔接。 路由与页面管理模块依托 Vue Router,配置首页、详情页、购物车页面路由,实现页面无缝切换,保持全局样式统一。 三、业务流程与功能路径 核心业务流程为:用户进首页→选分类 / 搜关键词→系统筛选分页展示商品→用户浏览卡片→加购→进购物车调整→查看总价,全程无刷新,交互连贯。 分类筛选路径:用户点侧边栏分类→触发 selectCategory 方法→重置关键词与页码→按分类 ID 过滤商品→更新分页→展示对应商品,分类与商品通过 categoryId 关联。 搜索功能路径:用户输关键词→300ms 后执行搜索→未选分类则筛选全量匹配商品,已选则筛选对应分类下商品→实时更新结果与分页,兼顾效率与精准度。 购物车操作路径:用户点 “加入购物车”→Pinia 存储数据→更新总数量与总价;进购物车页面→调整数量或删除商品→状态同步,确保数据一致。
AI逆向分析-AI逆向分析
这是一个桌面端的 AI 安全分析平台,简单来说,它就是一个能指挥专业安全工具干活的 AI 聊天助手。 核心业务就是通过对话的方式,辅助你完成以下四类安全分析任务: APK 逆向:上传安卓安装包,它会在后台调用 JADX 帮你分析代码逻辑和漏洞。 主机逆向:扔进去 exe 或 elf 文件,它配合 IDA Pro 帮你分析汇编和程序行为。 流量分析:上传抓包文件(pcap),它利用 Wireshark 帮你识别异常流量和攻击特征。 文件破解:遇到加密文件或哈希,它能调用 Hashcat 帮你跑字典或掩码破解。 技术亮点: 它不仅仅是套了个 AI 的壳,而是通过 MCP协议,真正打通了 AI 模型与本地安全工具(JADX, IDA 等)的连接。AI 可以读取工具的分析结果,结合知识库,给你提供有理有据的分析报告。
帮助文档   Copyright @ 2021-2024 程聚宝 | 浙ICP备2021014372号
人工客服