- 📚 批量下载 - 支持同时管理多个下载任务
- 📊 独立进度 - 每个任务显示独立的实时进度条
- 🎯 任务管理 - 添加、删除、开始、暂停任务
- 📝 批量导入 - 从文本快速导入多个下载任务
- 🖼️ 图片本地化 - 自动下载所有图片并更新为相对路径
- 🔐 私有知识库 - 支持使用 Cookie 访问私有知识库
- ⚙️ 灵活配置 - 可自定义下载延迟、超时等参数
- 🎨 管理后台风格 - 左右布局,清晰的任务统计和管理
- 🚀 跨平台 - 支持 Windows、macOS、Linux
-
左侧边栏:
- Logo 和作者标识
- 实时任务统计(总任务、运行中、等待中、已完成)
- 批量操作(开始全部、清除完成、批量导入)
- 高级设置
-
右侧主区域:
- 添加任务表单
- 任务列表卡片
- 每个任务独立的进度条和状态
- 从 Releases 页面下载适合你系统的版本
- 解压并运行程序
- 在右侧表单输入语雀知识库 URL
- 选择保存路径
- 点击"➕ 添加任务"
- 点击任务卡片上的
▶️ 按钮开始下载
- 点击左侧边栏的"📝 批量导入"按钮
- 在弹出的对话框中输入任务列表
- 格式: 每行一个任务
URL,Cookie(可选)https://www.yuque.com/user/book1 https://www.yuque.com/user/book2,yuque_session=xxx - 点击"导入"批量添加任务
- Go 1.23+
- Node.js 20+
- Wails CLI v2
# 安装 Wails CLI
go install github.com/wailsapp/wails/v2/cmd/wails@latest
# 安装项目依赖
go mod tidy
# 安装前端依赖
cd frontend
npm install
cd ..wails dev# 构建当前平台
wails build
# 跨平台构建
wails build -platform windows/amd64
wails build -platform darwin/amd64
wails build -platform darwin/arm64
wails build -platform linux/amd64-
添加单个任务
- 输入语雀知识库 URL
- (可选) 输入 Cookie 用于访问私有知识库
- 选择保存目录
- 点击"➕ 添加任务"
-
管理任务
▶️ 开始下载- ⏸️ 暂停下载
- 🗑️ 删除任务
-
查看进度
- 每个任务卡片显示:
- 知识库标题
- 当前下载的文档
- 进度条和百分比
- 已完成/总文档数
- 创建和完成时间
- 每个任务卡片显示:
▶️ 开始全部: 启动所有等待中的任务- 🗑️ 清除完成: 清除已完成和失败的任务
- 📝 批量导入: 从文本批量导入多个任务
左侧边栏实时显示:
- 总任务数
- 运行中任务数
- 等待中任务数
- 已完成任务数
- 最小/最大延迟: 控制下载文档之间的等待时间
- 请求超时: 网络请求的最长等待时间
- 后端: Go 1.23
- 前端: Svelte
- 框架: Wails v2
- 依赖:
- goquery - HTML 解析
- Wails Runtime - 桌面应用框架
yuque-spider-gui/
├── internal/
│ └── spider/ # 爬虫核心逻辑
│ ├── types.go # 数据结构定义
│ ├── fetcher.go # 网络请求处理
│ ├── downloader.go # 文档和图片下载
│ └── spider.go # 主爬虫逻辑
├── frontend/
│ └── src/
│ └── App.svelte # 管理后台界面
├── app.go # 应用后端接口(任务管理)
├── main.go # 应用入口
└── .github/
└── workflows/
└── build.yml # 自动构建配置
- 使用
sync.RWMutex保证并发安全 - 每个任务独立的 context 和 cancel 机制
- 实时任务状态更新
- 每个任务维护自己的进度信息
- 通过 WebSocket 事件实时推送更新
- 百分比、文档数、当前文档名等详细信息
- 支持从文本快速导入多个任务
- 一键启动所有待处理任务
- 一键清理已完成任务
欢迎提交 Issue 和 Pull Request!
- ✅ 批量任务管理系统
- ✅ 每个任务独立进度条
- ✅ 管理后台风格布局(左右布局)
- ✅ 实时任务统计面板
- ✅ 批量导入功能
- ✅ 批量操作(开始全部、清除完成)
- ✅ 任务状态管理(pending、running、completed、failed、cancelled)
- 🔄 从单任务重构为多任务架构
- 🔄 优化 UI/UX,采用管理后台设计
- 🔄 任务列表实时更新
- 🔄 更详细的任务信息展示
- ✅ 使用 Go + Wails 重构
- ✅ 支持动态配置参数
- ✅ 图形化界面
- ✅ GitHub Actions 自动构建
- 原项目: yuque-crawl
MIT License
Spritualkb
如果这个项目对你有帮助,请给一个 ⭐️ Star 支持一下!
Made with ❤️ by Spritualkb