9743186a9ec53d5b22f53ed3e0e409811c944b6b
- 新增依赖检测模块:启动时自动检测wkhtmltoimage和Playwright Chromium - 新增依赖安装对话框:缺失时提示用户一键下载安装 - 修复选项记忆功能:浏览类型、自动截图、自动上传选项现在会保存 - 优化KDocs登录检测:未登录时自动切换到金山文档页面并显示二维码 - 简化日志输出:移除debug信息,保留用户友好的状态提示 - 新增账号变化信号:账号管理页面的修改会自动同步到浏览任务页面 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
知识管理平台助手 - 精简版
一个基于 PyQt6 的本地桌面应用,用于自动化处理知识管理平台的浏览、截图和上传任务。
功能特性
- ✅ 账号管理:添加/编辑/删除账号,支持密码加密存储
- ✅ 自动浏览:使用纯HTTP请求快速浏览内容并标记已读
- ✅ 网页截图:使用wkhtmltoimage截取浏览结果
- ✅ 金山文档:自动上传截图到金山文档表格
- ✅ 现代UI:支持深色/浅色主题切换
安装
1. 安装 Python 依赖
pip install -r requirements.txt
2. 安装 Playwright 浏览器
playwright install chromium
3. 安装 wkhtmltoimage
从 https://wkhtmltopdf.org/downloads.html 下载安装。
安装后确保 wkhtmltoimage 在系统 PATH 中,或在设置中手动指定路径。
使用方法
启动应用
python main.py
基本流程
- 添加账号:在"账号管理"页面添加知识管理平台账号
- 开始浏览:在"浏览任务"页面选择账号和浏览类型,点击开始
- 查看截图:浏览完成后自动截图,可在"截图管理"页面查看
- 上传金山文档(可选):
- 在"金山文档"页面配置表格链接和列设置
- 扫码登录金山文档
- 启用自动上传或手动上传
项目结构
zsglpt-lite/
├── main.py # 应用入口
├── requirements.txt # 依赖清单
├── config.py # 配置管理
│
├── core/ # 核心业务逻辑
│ ├── api_browser.py # API浏览器(HTTP请求实现)
│ ├── screenshot.py # wkhtmltoimage截图
│ └── kdocs_uploader.py # 金山文档上传
│
├── ui/ # PyQt界面
│ ├── main_window.py # 主窗口
│ ├── account_widget.py # 账号管理面板
│ ├── browse_widget.py # 浏览任务面板
│ ├── screenshot_widget.py # 截图管理面板
│ ├── kdocs_widget.py # 金山文档面板
│ ├── settings_widget.py # 设置面板
│ ├── log_widget.py # 日志显示面板
│ └── styles.py # QSS样式
│
├── utils/ # 工具类
│ ├── storage.py # JSON配置存储
│ ├── crypto.py # 密码加密
│ └── worker.py # 后台线程
│
└── data/ # 运行数据
├── config.json # 用户配置
├── cookies/ # Cookie缓存
└── screenshots/ # 截图保存
配置说明
配置文件位于 data/config.json,包含:
accounts:账号列表(密码加密存储)kdocs:金山文档配置screenshot:截图参数配置proxy:代理设置zsgl:知识管理平台URL配置theme:界面主题
注意事项
- 首次使用需要安装 wkhtmltoimage
- 金山文档功能需要安装 Playwright 和 Chromium
- 密码使用 Fernet 对称加密存储,密钥保存在
data/encryption_key.bin - 代理支持 HTTP 代理,在设置中配置
依赖说明
| 依赖 | 版本 | 说明 |
|---|---|---|
| PyQt6 | >=6.5.0 | UI框架 |
| requests | >=2.31.0 | HTTP请求 |
| beautifulsoup4 | >=4.12.0 | HTML解析 |
| playwright | >=1.42.0 | 金山文档自动化 |
| cryptography | >=41.0.0 | 密码加密 |
| Pillow | >=10.0.0 | 图像处理 |
开发信息
- 从原项目
zsglpt精简而来 - 移除了 Flask Web服务、SocketIO、邮件通知、定时任务等
- 代码量约 2000+ 行(原项目 8000+ 行)
- 精简比例约 70%
License
MIT
Description
Languages
Python
100%