Spaces:
Sleeping
Sleeping
| # 快速开始指南 | |
| ## 🚀 5分钟快速部署 | |
| ### 步骤 1: 检查系统环境 | |
| ```bash | |
| # 检查Python版本(需要3.12+) | |
| python3 --version | |
| # 运行系统检查脚本 | |
| python3 test_setup.py | |
| ``` | |
| ### 步骤 2: 安装依赖 | |
| ```bash | |
| pip install flask flask-cors | |
| ``` | |
| ### 步骤 3: 准备数据 | |
| 确保 `data` 目录在项目根目录下: | |
| ``` | |
| /data/zhangl/code/hf/point/ | |
| └── data/ | |
| ├── 168_一年级上册/ | |
| ├── 169_二年级上册/ | |
| └── ... | |
| ``` | |
| ### 步骤 4: 导入数据到数据库 | |
| ```bash | |
| # 导入所有书籍数据 | |
| python3 import_book_data.py data | |
| ``` | |
| 预期输出: | |
| ``` | |
| 📦 创建数据库: books.db | |
| ✅ 数据库结构创建成功 | |
| ============================================================ | |
| 开始批量导入书籍数据 | |
| ============================================================ | |
| [1/30] 处理: 168_一年级上册 | |
| 导入书籍信息成功: 168 - 一年级上册 | |
| 导入 73 页内容,500 个片段成功 | |
| 导入 12 个目录项成功 | |
| ✅ 书籍 168_一年级上册 导入完成! | |
| ... | |
| ============================================================ | |
| 批量导入完成! | |
| 成功: 30 本 | |
| 失败: 0 本 | |
| ============================================================ | |
| ``` | |
| ### 步骤 5: 启动应用 | |
| ```bash | |
| python3 app.py | |
| ``` | |
| 预期输出: | |
| ``` | |
| 🚀 交互式英语学习应用 - Flask 版本 | |
| ============================================================ | |
| 📦 创建数据库: books.db | |
| ✅ 数据库连接初始化成功 | |
| ✅ 所有必要文件检查完成 | |
| ✅ 应用初始化完成 | |
| 🌐 监听端口: 7860 | |
| 📁 工作目录: /data/zhangl/code/hf/point | |
| 🔧 调试模式: 关闭 | |
| ============================================================ | |
| 🎉 应用已准备就绪! | |
| ============================================================ | |
| ``` | |
| ### 步骤 6: 访问应用 | |
| 在浏览器中打开: | |
| - **书籍目录页**: http://localhost:7860/ | |
| - **阅读某本书**: http://localhost:7860/reader?book_id=168 | |
| ## 📖 使用说明 | |
| ### 书籍目录页面 | |
| 1. 浏览所有可用的教材 | |
| 2. 使用搜索框搜索教材 | |
| 3. 点击教材卡片进入阅读页面 | |
| ### 阅读页面 | |
| 1. **点读功能**: 点击页面上的文本片段播放音频 | |
| 2. **翻译切换**: 点击"翻译"按钮显示/隐藏中文翻译 | |
| 3. **交互区域**: 点击"交互"按钮显示可点击区域 | |
| 4. **目录导航**: 点击"目录"按钮查看章节目录 | |
| 5. **搜索**: 点击"搜索"按钮在当前书籍中搜索内容 | |
| 6. **设置**: 点击"设置"按钮调整播放速度等选项 | |
| ### 键盘快捷键 | |
| - `←` / `→`: 翻页 | |
| - `Space`: 播放/暂停音频 | |
| - `T`: 切换翻译 | |
| - `I`: 切换交互区域 | |
| - `Esc`: 关闭弹出面板 | |
| ## 🔧 常见问题 | |
| ### 1. 数据导入失败 | |
| **问题**: `❌ 错误: 数据目录不存在: data` | |
| **解决**: | |
| - 确保 `data` 目录在项目根目录下 | |
| - 检查目录中是否有书籍数据 | |
| ### 2. 页面图片不显示 | |
| **问题**: 页面加载后图片不显示 | |
| **解决**: | |
| - 检查 `data/xxx/images/` 目录是否存在 | |
| - 检查图片文件命名是否正确(格式:`page_001.jpg`) | |
| - 查看浏览器控制台错误信息 | |
| ### 3. 音频无法播放 | |
| **问题**: 点击文本片段后音频不播放 | |
| **解决**: | |
| - 检查 `data/xxx/audios/` 目录是否存在 | |
| - 检查音频文件是否存在 | |
| - 确保浏览器支持 MP3 格式 | |
| - 检查浏览器是否允许自动播放音频 | |
| ### 4. 端口被占用 | |
| **问题**: `Address already in use` | |
| **解决**: | |
| ```bash | |
| # 查找占用7860端口的进程 | |
| lsof -i:7860 | |
| # 或者使用其他端口 | |
| export PORT=8080 | |
| python3 app.py | |
| ``` | |
| ### 5. 重新导入数据 | |
| 如果需要重新导入所有数据: | |
| ```bash | |
| # 删除数据库并重新导入 | |
| python3 import_book_data.py data --recreate | |
| ``` | |
| ## 📊 数据统计 | |
| 查看已导入的数据统计: | |
| ```bash | |
| # 运行验证脚本 | |
| python3 import_book_data.py --verify-only | |
| ``` | |
| 或者访问 API: | |
| ```bash | |
| curl http://localhost:7860/api/v2/statistics | |
| ``` | |
| ## 🔍 API 测试 | |
| ### 获取书籍列表 | |
| ```bash | |
| curl http://localhost:7860/api/v2/books | |
| ``` | |
| ### 获取书籍详情 | |
| ```bash | |
| curl http://localhost:7860/api/v2/books/168 | |
| ``` | |
| ### 获取页面内容 | |
| ```bash | |
| curl http://localhost:7860/api/v2/books/168/pages/2 | |
| ``` | |
| ### 搜索内容 | |
| ```bash | |
| curl "http://localhost:7860/api/v2/books/168/search?keyword=hello" | |
| ``` | |
| ## 🎯 下一步 | |
| - 探索更多功能,如书签、搜索等 | |
| - 自定义样式和主题 | |
| - 添加更多教材数据 | |
| - 集成到现有系统 | |
| ## 📚 更多文档 | |
| - [完整文档](README.md) | |
| - [数据结构说明](BOOKS_API_DATA_文档.md) | |
| - [API 文档](README.md#-api-接口) | |
| ## 💡 提示 | |
| 1. **首次使用**: 建议先导入少量数据测试,确认无误后再导入全部数据 | |
| 2. **开发调试**: 设置 `export FLASK_DEBUG=True` 启用调试模式 | |
| 3. **性能优化**: 对于大量数据,考虑使用生产级 WSGI 服务器(如 Gunicorn) | |
| 4. **资源路径**: 所有资源路径都是相对于 `data` 目录的 | |
| ## 🆘 获取帮助 | |
| 如果遇到问题: | |
| 1. 查看日志文件: `logs/app.log` | |
| 2. 运行测试脚本: `python3 test_setup.py` | |
| 3. 查看浏览器控制台错误信息 | |
| 4. 检查 README.md 中的故障排除部分 | |
| --- | |
| **祝您使用愉快!** 🎉 | |