您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
全新现代化日历定时UI,优化的图片背景和交互逻辑,提供极致操作体验。
# 🎯 UJSCOURSE - 江苏大学自动抢课脚本
[](https://github.com/zhengge6/UJSCOURSE)
[](LICENSE)
[](https://www.tampermonkey.net/)
> 🚀 一个功能强大的江苏大学教务系统自动抢课脚本,具有现代化UI界面和智能定时功能
## 📋 目录
- [✨ 功能特色](#-功能特色)
- [🛠️ 安装方法](#️-安装方法)
- [📖 使用指南](#-使用指南)
- [⚙️ 配置说明](#️-配置说明)
- [🎨 界面预览](#-界面预览)
- [❓ 常见问题](#-常见问题)
- [⚠️ 注意事项](#️-注意事项)
- [🤝 贡献指南](#-贡献指南)
- [📄 许可证](#-许可证)
## ✨ 功能特色
### 🎯 核心功能
- **智能抢课**: 自动检测课程余量并快速选课
- **定时抢课**: 支持精确到秒的定时启动功能
- **冲突检测**: 自动识别并避免时间冲突的课程
- **多教学班支持**: 自动尝试同一课程的不同教学班
- **失败重试**: 智能重试机制,提高成功率
### 🎨 用户界面
- **现代化设计**: 采用毛玻璃效果和渐变背景
- **悬浮窗口**: 可拖拽的悬浮控制面板
- **日历选择器**: 直观的日期时间选择界面
- **实时状态**: 动态显示脚本运行状态和日志
- **最小化模式**: 可收缩为悬浮球节省空间
### 🔧 技术特性
- **用户脚本**: 基于Tampermonkey/Greasemonkey运行
- **数据持久化**: 自动保存配置信息
- **通知提醒**: 成功或失败时弹出系统通知
- **性能优化**: 合理的请求间隔,避免服务器压力
## 🛠️ 安装方法
### 前置要求
1. **浏览器**: Chrome、Firefox、Edge等现代浏览器
2. **扩展程序**: 安装 [Tampermonkey](https://www.tampermonkey.net/) 扩展
### 安装步骤
#### 方法一:直接安装
1. 确保已安装Tampermonkey扩展
2. 复制 `qiang.js` 文件中的脚本代码
3. 打开Tampermonkey管理面板
4. 点击"添加新脚本"
5. 粘贴代码并保存
6. 访问江苏大学教务系统即可使用
#### 方法二:从GitHub安装
1. 访问本项目GitHub页面
2. 下载 `qiang.js` 文件
3. 在Tampermonkey中导入该文件
### 验证安装
访问 `jwxt.ujs.edu.cn` 教务系统,如果看到右下角出现抢课助手面板,说明安装成功。
## 📖 使用指南
### 基本使用流程
#### 1️⃣ 设置目标课程
```
方式一:通过界面菜单
Tampermonkey菜单 → ⚙️ 设置课程号 → 输入课程代码
方式二:通过悬浮窗
在抢课助手面板中查看当前设置的课程号
```
#### 2️⃣ 配置定时抢课(可选)
```
点击"设置/修改定时"按钮 → 选择日期和时间 → 确认设置
```
#### 3️⃣ 开始抢课
```
点击"开始"按钮 → 脚本自动运行 → 等待抢课结果
```
### 界面操作说明
#### 主控制面板
- **状态显示**: 显示当前运行状态(运行中/已停止/倒计时中)
- **目标课程**: 显示当前设置的课程号
- **尝试次数**: 显示已尝试次数和失败次数
- **定时状态**: 显示定时器设置情况
#### 控制按钮
- **开始**: 立即开始抢课
- **停止**: 停止当前运行的抢课任务
- **设置/修改定时**: 打开日历时间选择器
#### 日志区域
实时显示脚本运行日志,包括:
- 发现的教学班信息
- 抢课尝试记录
- 成功/失败通知
- 错误信息
## ⚙️ 配置说明
### 主要配置项
| 配置项 | 说明 | 默认值 |
|--------|------|--------|
| `targetCourseCode` | 目标课程号 | 空 |
| `targetStartTime` | 定时开始时间 | 空 |
| `checkInterval` | 检查间隔(毫秒) | 2000 |
| `maxAttempts` | 最大尝试次数 | 1000 |
| `maxFailedAttempts` | 最大失败次数 | 5 |
### 自定义配置
可以在脚本代码中修改 `config` 对象来调整默认参数:
```javascript
const config = {
targetCourseCode: GM_getValue("TARGET_COURSE_CODE", ""),
targetStartTime: GM_getValue("TARGET_START_TIME", ""),
checkInterval: 2000, // 检查间隔,建议不要设置太小
maxAttempts: 1000, // 最大尝试次数
maxFailedAttempts: 5 // 连续失败后停止
};
```
## 🎨 界面预览
### 主控制面板
- 📱 现代化毛玻璃设计
- 🖼️ 动态随机背景图片
- 📊 实时状态监控
- 📝 滚动日志显示
### 日历选择器
- 📅 直观的月历界面
- ⏰ 精确的时分秒设置
- ✅ 一键确认设置
### 悬浮球模式
- 🔵 紧凑的圆形悬浮球
- 🖱️ 可拖拽移动位置
- 🔄 一键展开/收缩
## ❓ 常见问题
### Q: 脚本无法启动?
**A**: 请检查以下几点:
1. 确认已正确安装Tampermonkey扩展
2. 确认脚本已启用(绿色指示灯)
3. 确认当前网址匹配脚本运行条件
4. 刷新页面重试
### Q: 设置了课程号但显示"未设置"?
**A**: 请检查:
1. 课程号格式是否正确(纯数字)
2. 是否保存了设置
3. 尝试重新设置课程号
### Q: 定时功能不工作?
**A**: 请确认:
1. 设置的时间是否为未来时间
2. 浏览器页面是否一直打开
3. 电脑是否处于唤醒状态
### Q: 抢课失败怎么办?
**A**: 可能的原因:
1. 课程已满员
2. 存在时间冲突
3. 网络连接问题
4. 服务器响应慢
### Q: 如何优化成功率?
**A**: 建议:
1. 在选课开放前几分钟启动脚本
2. 保持网络连接稳定
3. 关闭其他占用带宽的应用
4. 设置合理的检查间隔
## ⚠️ 注意事项
### 使用须知
1. **仅限学习交流**: 本脚本仅供学习和研究使用
2. **遵守校规**: 使用时请遵守学校相关规定
3. **合理使用**: 避免频繁请求给服务器造成压力
4. **风险自担**: 使用本脚本产生的任何后果由用户自行承担
### 技术限制
1. **依赖网页**: 需要保持教务系统页面打开
2. **浏览器限制**: 某些浏览器可能限制脚本功能
3. **系统更新**: 教务系统更新可能影响脚本兼容性
### 安全提醒
1. **账号安全**: 不要在脚本中保存账号密码
2. **代码审查**: 使用前请仔细检查脚本代码
3. **来源可信**: 只从可信来源下载脚本
## 🤝 贡献指南
### 欢迎贡献
我们欢迎各种形式的贡献:
- 🐛 报告Bug
- 💡 提出新功能建议
- 📝 改进文档
- 🔧 提交代码修复
### 贡献流程
1. Fork 本仓库
2. 创建新的功能分支 (`git checkout -b feature/AmazingFeature`)
3. 提交更改 (`git commit -m 'Add some AmazingFeature'`)
4. 推送到分支 (`git push origin feature/AmazingFeature`)
5. 开启 Pull Request
### 开发环境
- 推荐使用 VS Code 进行开发
- 安装相关JavaScript开发插件
- 使用 ESLint 保持代码风格一致
## 📄 许可证
本项目采用 MIT 许可证 - 查看 [LICENSE](LICENSE) 文件了解详情
## 🙏 致谢
- 感谢江苏大学提供教育平台
- 感谢 Tampermonkey 团队提供优秀的用户脚本平台
- 感谢所有为本项目贡献代码和建议的开发者
## 📞 联系方式
- 📧 Email: [[email protected]](mailto:[email protected])
- 🐛 Issues: [GitHub Issues](https://github.com/zhengge6/UJSCOURSE/issues)
- 💬 Discussions: [GitHub Discussions](https://github.com/zhengge6/UJSCOURSE/discussions)
---
⭐ 如果这个项目对您有帮助,请给它一个星标!
**免责声明**: 本工具仅供学习交流使用,请遵守学校相关规定,合理使用。