105 lines
2.4 KiB
Markdown
105 lines
2.4 KiB
Markdown
# yidaima - 自动化工具集
|
||
|
||
综合自动化工具,支持微信公众号文章发布、项目截图、文章管理等功能。
|
||
|
||
## 功能模块
|
||
|
||
### 1. 发布微信公众号
|
||
- Markdown 编辑器,支持代码高亮和主题切换
|
||
- 一键转换为微信适配格式
|
||
- 支持富文本编辑和实时预览
|
||
|
||
### 2. 文章发布管理
|
||
- 文章列表展示(分页、搜索)
|
||
- 文章状态管理
|
||
- 数据库持久化存储
|
||
|
||
### 3. 项目运行截图
|
||
- 自动化截取项目运行界面
|
||
- 支持配置截图区域和参数
|
||
- 适用于项目文档和演示
|
||
|
||
### 4. 参数设置
|
||
- 数据库连接配置
|
||
- Umi-OCR 配置
|
||
- 截图参数配置
|
||
|
||
## 依赖与准备
|
||
|
||
- 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 # 仅浏览器自动化需要
|
||
```
|
||
|
||
## 快速开始
|
||
|
||
### 启动 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教程"
|
||
# 无头模式
|
||
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
|