From 165b32f74a14961f2113684958fe3583915bddb6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E9=B9=8F?= Date: Fri, 10 Apr 2026 20:05:24 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20README=EF=BC=8C=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E5=AE=8C=E6=95=B4=E5=8A=9F=E8=83=BD=E8=AF=B4=E6=98=8E?= =?UTF-8?q?=E5=92=8C=E4=BD=BF=E7=94=A8=E6=8C=87=E5=8D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.6 --- README.md | 136 +++++++++++++++++++++++++++++++++++------------------- 1 file changed, 88 insertions(+), 48 deletions(-) diff --git a/README.md b/README.md index 76a49a6..14e22ed 100644 --- a/README.md +++ b/README.md @@ -1,64 +1,104 @@ -# yidaima - Umi-OCR 桌面自动化脚本 +# yidaima - 自动化工具集 + +综合自动化工具,支持微信公众号文章发布、项目截图、文章管理等功能。 + +## 功能模块 + +### 1. 发布微信公众号 +- Markdown 编辑器,支持代码高亮和主题切换 +- 一键转换为微信适配格式 +- 支持富文本编辑和实时预览 + +### 2. 文章发布管理 +- 文章列表展示(分页、搜索) +- 文章状态管理 +- 数据库持久化存储 + +### 3. 项目运行截图 +- 自动化截取项目运行界面 +- 支持配置截图区域和参数 +- 适用于项目文档和演示 + +### 4. 参数设置 +- 数据库连接配置 +- Umi-OCR 配置 +- 截图参数配置 ## 依赖与准备 -- 启动 **Umi-OCR** 并开启 **HTTP 服务**(默认 `http://127.0.0.1:1224/api/ocr`) -- 安装依赖: - -```bash -python -m pip install -r requirements.txt -``` - -## 快速验证 - -- 等待某个文字出现在屏幕上: - -```bash -python main.py --wait "确定" --timeout 20 -``` - -- 点击某个文字: - -```bash -python main.py --click "确定" -``` - -## 局部区域 OCR(更快) - -指定区域格式为 `left,top,width,height`(屏幕坐标): - -```bash -python main.py --wait "登录" --region 100,100,800,600 -``` - -## 配置 - -编辑 `config.yaml`: - -- `umi_ocr.url`: Umi-OCR API 地址 -- `screenshot.default_region`: 默认 OCR 区域(null 为全屏) -- `screenshot.prefer_mss`: 优先使用 mss 截图(更快),失败会自动回退 - -## Playwright 示例:百度搜索并截图 - -对应文档 `docs/baidu.md`,脚本入口:`baidu_playwright.py`。 +- Python 3.8+ +- MySQL 数据库 +- **Umi-OCR**(用于 OCR 功能,需开启 HTTP 服务,默认 `http://127.0.0.1:1224/api/ocr`) +- **Playwright**(用于浏览器自动化,可选) 安装依赖: ```bash python -m pip install -r requirements.txt -python -m playwright install chromium +python -m playwright install chromium # 仅浏览器自动化需要 ``` -运行(可见浏览器): +## 快速开始 + +### 启动 GUI + +```bash +python gui.py +``` + +### 命令行模式 + +等待屏幕上出现文字: +```bash +python main.py --wait "确定" --timeout 20 +``` + +点击屏幕上文字: +```bash +python main.py --click "确定" +``` + +指定区域 OCR(格式:`left,top,width,height`): +```bash +python main.py --wait "登录" --region 100,100,800,600 +``` + +### 百度搜索示例(Playwright) ```bash python baidu_playwright.py --keyword "java教程" -``` - -无头模式: - -```bash +# 无头模式 python baidu_playwright.py --keyword "java教程" --headless ``` +## 配置 + +编辑 `config.yaml` 或通过 GUI 设置: + +- `database`: MySQL 数据库连接配置 +- `umi_ocr.url`: Umi-OCR API 地址 +- `screenshot.default_region`: 默认截图区域(null 为全屏) +- `screenshot.prefer_mss`: 优先使用 mss 截图(更快),失败自动回退 + +## 项目结构 + +``` +├── gui.py # 主程序 GUI +├── markdown_editor.py # Markdown 编辑器 +├── editor_gui.py # 编辑器界面 +├── md_to_wechat.py # Markdown 转微信格式 +├── wechat_publisher.py # 微信公众号发布 +├── project_screenshot.py # 项目截图 +├── db_manager.py # 数据库管理 +├── config_loader.py # 配置加载 +├── step1.py, step2.py # 自动化步骤 +└── config.yaml # 配置文件 +``` + +## 技术栈 + +- **GUI**: Tkinter +- **数据库**: MySQL +- **OCR**: Umi-OCR +- **浏览器自动化**: Playwright +- **配置**: YAML