📚 课件整理助手
面向教师备课场景的 Windows 桌面课件管理软件。基于 Python 3.12 + PySide6 + SQLite FTS5 构建,支持全格式课件导入、全文检索、学科自动识别、标签分类、一键归档等完整工作流。
✨ 功能一览
| 模块 | 功能 |
|---|---|
| 📥 导入解析 | 导入文件/文件夹(可拖拽),自动解析 PPT(X)/PDF/Word/TXT/MD/图片/音视频 |
| 🔍 全文检索 | 中文内容毫秒级搜索(FTS5 trigram),支持课件正文、文件名、摘要 |
| 🧠 学科识别 | 三层识别:文件名关键词 → 内容扫描 → 上下文推断(绿/黄/橙/红/灰置信度) |
| 🏷️ 标签体系 | 自定义标签、批量打标、按标签筛选 |
| 🖼️ 多视图 | 大/中/小卡片视图 + 详细列表(表格排序、批量标签查询、视图记忆) |
| 📁 分类管理 | 树形分类、新建/重命名/删除,未分类视图 |
| ✏️ 批量重命名 | 模板/前缀/后缀/查找替换/清理,带实时预览与冲突检测 |
| 📦 一键归档 | 按学科移动到课件库目录,防覆盖 |
| ♻️ 重复清理 | 文件名相似组检测,一键保留最新版 |
| ↩️ 一键还原 | 归档历史批次,随时反悔还原 |
| 👀 桌面监视 | 桌面新课件弹窗提示,一键入库/归档 |
| 🖥️ 系统托盘 | 最小化到托盘,后台持续监视 |
| 🖱️ 右键菜单 | 任意文件右键 → “发送到课件整理助手” 直接归档 |
| 🎨 主题美化 | 明/暗主题自适应,圆角卡片、星级角标、置信度色条 |
🚀 快速开始
直接使用(免安装)
从 Releases 下载便携版(单文件 exe)或安装版,解压/安装后即可运行。
从源码运行
# 1. 安装依赖(Python 3.10+)
pip install PySide6 python-pptx python-docx PyMuPDF Pillow pystray watchdog imageio-ffmpeg
# 2. 运行
python app.py
🧪 测试
python tests/smoke.py # 核心链路冒烟测试
python tests/ui_smoke.py # UI 构建冒烟测试
📦 打包发布
# 1. 打包单文件 exe(产物: dist\课件整理助手.exe)
pip install pyinstaller
pyinstaller build.spec --noconfirm --clean
# 2. 生成安装版(需安装 Inno Setup 6)
ISCC.exe installer.iss # 产物: 发布\课件整理助手安装版.exe
📂 项目结构
courseware-manager/
├── app.py # 程序入口
├── quick_move.py # 右键菜单辅助脚本(独立运行)
├── build.spec # PyInstaller 打包配置
├── installer.iss # Inno Setup 安装脚本
├── core/ # 核心逻辑(无 GUI 依赖)
│ ├── config.py # 配置与路径
│ ├── database.py # SQLite + FTS5 全文检索
│ ├── parsers.py # 解析引擎(文本/页数/时长/缩略图)
│ ├── classifier.py # 学科三层识别 + 重复检测
│ ├── scanner.py # 目录扫描与索引
│ ├── renamer.py # 批量重命名
│ └── organizer.py # 归档/还原 + 批次日志
├── services/ # 系统集成
│ ├── watcher.py # 桌面监视(watchdog)
│ ├── tray.py # 系统托盘(pystray)
│ └── menu.py # 右键菜单注册(注册表)
├── ui/ # PySide6 界面
│ ├── main_window.py # 主窗口
│ ├── card_view.py # 课件卡片网格
│ ├── detail_panel.py # 详情面板
│ ├── theme.py # 明暗主题
│ ├── dialogs/ # 批量重命名/归档/重复清理/还原/设置等对话框
│ └── signals.py # 全局信号总线
├── tests/ # 冒烟测试
├── assets/ # 静态资源(logo 等)
├── preview/ # 界面预览截图
└── release/ # 预编译发布物(便携版 + 安装版)
📝 说明
- 索引模式不会移动你的原文件;只有执行「归档」时才把文件移动到课件库目录。
- 学科关键词可编辑
data\学科关键词配置.json自定义(首次运行自动生成)。 - 老式
.ppt/.doc需要安装 Office + pywin32 才能解析文本;无 Office 时跳过内容识别。 - 用户数据保存在
%APPDATA%\课件整理助手2\,卸载安装版时会询问是否保留。