更新验证器提价

This commit is contained in:
2026-03-25 15:17:18 +08:00
commit 93c2cebc94
73 changed files with 15872 additions and 0 deletions

483
docs/API.md Normal file
View File

@@ -0,0 +1,483 @@
# API文档
本文档提供了ArticleReplaceBatch系统的API参考。
---
## 目录
- [配置管理器 API](#配置管理器-api)
- [服务层 API](#服务层-api)
- [工具 API](#工具-api)
- [UI组件 API](#ui组件-api)
- [命令行接口](#命令行接口)
---
## 配置管理器 API
### ConfigManager
配置管理器单例类,用于统一管理应用配置。
#### 类方法
##### `__new__(cls) -> ConfigManager`
创建或返回ConfigManager单例实例。
**返回值:**
- `ConfigManager`: 单例实例
**示例:**
```python
from config_manager import config_manager
# 获取单例实例
manager = config_manager
```
##### `get(section: str, option: str, fallback: str = '') -> str`
获取配置值。
**参数:**
- `section`: 配置节名称
- `option`: 配置项名称
- `fallback`: 默认值(默认为空字符串)
**返回值:**
- `str`: 配置值
**示例:**
```python
workflow_id = config_manager.get('Coze', 'workflow_id')
```
##### `get_int(section: str, option: str, fallback: int = 0) -> int`
获取整数配置值。
**参数:**
- `section`: 配置节名称
- `option`: 配置项名称
- `fallback`: 默认值默认为0
**返回值:**
- `int`: 整数配置值
**示例:**
```python
max_threads = config_manager.get_int('General', 'max_threads')
```
##### `set(section: str, option: str, value: Any) -> None`
设置配置值。
**参数:**
- `section`: 配置节名称
- `option`: 配置项名称
- `value`: 配置值
**示例:**
```python
config_manager.set('General', 'max_threads', '5')
```
##### `save() -> None`
保存配置到文件。
**示例:**
```python
config_manager.save()
```
##### `reload() -> None`
重新加载配置文件。
**示例:**
```python
config_manager.reload()
```
---
## 服务层 API
### WebScrapingService
网页抓取服务,提供异步网页内容提取功能。
#### 类方法
##### `__init__(self, max_workers: int = 3)`
初始化网页抓取服务。
**参数:**
- `max_workers`: 最大工作线程数默认为3
**示例:**
```python
from src.services.web_scraping import WebScrapingService
service = WebScrapingService(max_workers=5)
```
##### `extract_content_async(self, links: List[str], max_retries: int = 3) -> List[Tuple[str, str, List[str]]]`
异步提取多个链接的内容。
**参数:**
- `links`: 链接列表
- `max_retries`: 最大重试次数默认为3
**返回值:**
- `List[Tuple[str, str, List[str]]]`: 提取结果列表每个元组包含标题、内容、图片URLs
**示例:**
```python
links = [
"https://www.toutiao.com/article/123",
"https://www.toutiao.com/article/456"
]
results = service.extract_content_async(links)
for title, content, images in results:
print(f"标题: {title}")
print(f"内容长度: {len(content)}")
print(f"图片数量: {len(images)}")
```
---
### ImageProcessingService
图片处理服务,提供异步图片下载和处理功能。
#### 类方法
##### `__init__(self, max_workers: int = 5)`
初始化图片处理服务。
**参数:**
- `max_workers`: 最大工作线程数默认为5
**示例:**
```python
from src.services.image_processing import ImageProcessingService
service = ImageProcessingService(max_workers=5)
```
##### `process_images_async(self, image_urls: List[str], base_filename: str, save_dir: str) -> bool`
异步处理多个图片。
**参数:**
- `image_urls`: 图片URL列表
- `base_filename`: 基础文件名
- `save_dir`: 保存目录
**返回值:**
- `bool`: 是否全部成功
**示例:**
```python
image_urls = [
"https://example.com/img1.jpg",
"https://example.com/img2.jpg"
]
success = service.process_images_async(image_urls, "test", "output")
```
---
### AIService
AI服务基类提供AI调用功能。
#### CozeAIService
Coze AI服务实现。
#### 类方法
##### `__init__(self)`
初始化Coze AI服务。
**示例:**
```python
from src.services.ai_service import CozeAIService
service = CozeAIService()
```
##### `call_article_workflow(self, parameters: Dict[str, Any]) -> str`
调用Coze文章工作流。
**参数:**
- `parameters`: 参数字典
**返回值:**
- `str`: AI生成的结果
**示例:**
```python
result = service.call_article_workflow({"article": "测试文章内容"})
```
##### `get_stats(self) -> Dict[str, Any]`
获取服务统计信息。
**返回值:**
- `Dict[str, Any]`: 包含调用次数、总时间、平均时间的统计信息
**示例:**
```python
stats = service.get_stats()
print(f"调用次数: {stats['call_count']}")
print(f"平均时间: {stats['avg_time']:.2f}s")
```
---
## 工具 API
### Validator
数据验证器,提供各种数据验证功能。
#### 静态方法
##### `validate_url(url: str) -> bool`
验证URL格式。
**参数:**
- `url`: URL字符串
**返回值:**
- `bool`: URL是否有效
**示例:**
```python
from src.utils.validation import Validator
is_valid = Validator.validate_url("https://www.example.com")
```
##### `validate_article_url(url: str) -> bool`
验证文章URL头条、微信、网易等
**参数:**
- `url`: 文章URL
**返回值:**
- `bool`: URL是否为支持的文章链接
**示例:**
```python
is_valid = Validator.validate_article_url("https://www.toutiao.com/article/123")
```
##### `validate_string(value: Any, min_length: int = 0, max_length: Optional[int] = None) -> bool`
验证字符串。
**参数:**
- `value`: 待验证的值
- `min_length`: 最小长度默认为0
- `max_length`: 最大长度(可选)
**返回值:**
- `bool`: 字符串是否有效
**示例:**
```python
is_valid = Validator.validate_string("测试", min_length=1, max_length=10)
```
---
### ArticleValidator
文章数据验证器。
#### 静态方法
##### `validate_title(title: str) -> bool`
验证文章标题。
**参数:**
- `title`: 文章标题
**返回值:**
- `bool`: 标题是否有效
**示例:**
```python
from src.utils.validation import ArticleValidator
is_valid = ArticleValidator.validate_title("测试标题")
```
##### `validate_content(content: str, min_length: int = 100) -> bool`
验证文章内容。
**参数:**
- `content`: 文章内容
- `min_length`: 最小长度默认为100
**返回值:**
- `bool`: 内容是否有效
**示例:**
```python
is_valid = ArticleValidator.validate_content("测试内容...", min_length=50)
```
---
## UI组件 API
### LogTextHandler
自定义日志处理器将日志输出到CustomTkinter文本框。
#### 类方法
##### `__init__(self, text_widget, level=logging.NOTSET)`
初始化日志处理器。
**参数:**
- `text_widget`: CustomTkinter文本框组件
- `level`: 日志级别默认为NOTSET
**示例:**
```python
from src.ui.log_handler import LogTextHandler
handler = LogTextHandler(text_widget)
```
---
## 命令行接口
### CLI Usage
使用`cli.py`提供的命令行接口。
#### 基本用法
```bash
python cli.py --excel 文章链接.xlsx --threads 3
```
#### 参数说明
- `--excel`, `-e`: Excel文件路径包含文章链接
- `--link`, `-l`: 单个文章链接
- `--threads`, `-t`: 线程数默认为1
- `--service`, `-s`: AI服务默认为coze
- `--type`, `-T`: 生成类型("短篇"或"文章"
- `--template`: 使用的模板名称
- `--verbose`, `-v`: 显示详细日志
- `--config`: 配置文件路径
#### 示例
**处理Excel文件**
```bash
python cli.py --excel 文章链接.xlsx --threads 3 --type 文章
```
**处理单个链接:**
```bash
python cli.py --link https://www.toutiao.com/article/123
```
**使用详细日志:**
```bash
python cli.py --excel 文章链接.xlsx --verbose
```
**使用自定义配置:**
```bash
python cli.py --excel 文章链接.xlsx --config custom_config.ini
```
---
## 异常处理
### ValidationError
数据验证错误异常。
**示例:**
```python
from src.utils.validation import validate_and_raise, ArticleValidator
try:
validate_and_raise(data, ArticleValidator.validate_article_data, "文章数据验证失败")
except ValidationError as e:
print(f"验证失败: {e}")
```
---
## 最佳实践
### 1. 使用配置管理器
```python
# 推荐使用ConfigManager
from config_manager import config_manager
workflow_id = config_manager.get('Coze', 'workflow_id')
# 不推荐直接访问CONFIG
from config import CONFIG
workflow_id = CONFIG['Coze']['workflow_id']
```
### 2. 使用服务层
```python
# 推荐:使用服务层
from src.services.web_scraping import web_scraping_service
results = web_scraping_service.extract_content_async(links)
# 不推荐:直接调用底层函数
from get_web_content import extract_content_with_retry
results = [extract_content_with_retry(link) for link in links]
```
### 3. 验证输入数据
```python
# 推荐:使用验证器
from src.utils.validation import Validator
if Validator.validate_article_url(url):
process_url(url)
# 不推荐:不验证直接使用
process_url(url)
```
---
## 版本信息
- **当前版本**: 1.0.0
- **Python版本**: 3.10+
- **最后更新**: 2026-03-07
---
## 联系方式
如有问题或建议,请通过以下方式联系:
- 提交Issue
- 发送Pull Request
- 联系项目维护者
---
**文档版本**: v1.0
**维护者**: opencode

423
docs/DEPLOYMENT_GUIDE.md Normal file
View File

@@ -0,0 +1,423 @@
# 部署指南
本文档提供了ArticleReplaceBatch项目的部署指南。
---
## 目录
- [环境要求](#环境要求)
- [本地部署](#本地部署)
- [服务器部署](#服务器部署)
- [容器化部署](#容器化部署)
- [常见问题](#常见问题)
---
## 环境要求
### 系统要求
- **操作系统**: Windows 10+, Linux (Ubuntu 20.04+), macOS 10.15+
- **Python版本**: 3.10 或更高版本
- **内存**: 最低 2GB推荐 4GB+
- **磁盘空间**: 最低 1GB
### 依赖要求
`requirements.txt` 文件。
---
## 本地部署
### 1. 获取代码
```bash
git clone <repository-url>
cd ArticleReplaceBatch
```
### 2. 创建虚拟环境
```bash
python -m venv venv
# Windows
venv\Scripts\activate
# Linux/Mac
source venv/bin/activate
```
### 3. 安装依赖
```bash
pip install -r requirements.txt
```
### 4. 配置环境
```bash
cp .env.example .env
# 编辑 .env 文件,填写必要的配置
```
### 5. 初始化配置
```bash
python -c "from config import CONFIG; print('配置初始化完成')"
```
### 6. 运行应用
```bash
# GUI模式
python ArticleReplace.py
# 命令行模式
python cli.py --help
```
---
## 服务器部署
### 1. 安装系统依赖
**Ubuntu/Debian:**
```bash
sudo apt update
sudo apt install -y python3 python3-venv python3-pip
sudo apt install -y xvfb # 无GUI运行需要
```
**CentOS/RHEL:**
```bash
sudo yum install -y python3 python3-venv python3-pip
sudo yum install -y xorg-x11-server-Xvfb
```
### 2. 创建部署目录
```bash
sudo mkdir -p /opt/article-replace
sudo chown $USER:$USER /opt/article-replace
cd /opt/article-replace
```
### 3. 部署应用
```bash
# 复制代码到部署目录
git clone <repository-url> .
git checkout main
# 创建虚拟环境
python3 -m venv venv
source venv/bin/activate
# 安装依赖
pip install -r requirements.txt
```
### 4. 配置环境
```bash
cp .env.example .env
# 编辑 .env 文件
nano .env
```
### 5. 创建服务文件
**创建 systemd 服务文件:**
```bash
sudo nano /etc/systemd/system/article-replace.service
```
**服务文件内容:**
```ini
[Unit]
Description=Article Replace Batch Service
After=network.target
[Service]
Type=simple
User=www-data
WorkingDirectory=/opt/article-replace
Environment="PATH=/opt/article-replace/venv/bin"
ExecStart=/opt/article-replace/venv/bin/python cli.py --excel /path/to/articles.xlsx --threads 3
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.target
```
### 6. 启动服务
```bash
# 重新加载systemd
sudo systemctl daemon-reload
# 启动服务
sudo systemctl start article-replace
# 设置开机自启
sudo systemctl enable article-replace
# 查看状态
sudo systemctl status article-replace
# 查看日志
sudo journalctl -u article-replace -f
```
---
## 容器化部署
### 1. 创建 Dockerfile
```dockerfile
FROM python:3.11-slim
# 设置工作目录
WORKDIR /app
# 安装系统依赖
RUN apt-get update && apt-get install -y \
xvfb \
&& rm -rf /var/lib/apt/lists/*
# 复制依赖文件
COPY requirements.txt .
# 安装Python依赖
RUN pip install --no-cache-dir -r requirements.txt
# 复制应用代码
COPY . .
# 创建必要目录
RUN mkdir -p logs backups articles picture
# 暴露端口(如果需要)
# EXPOSE 8000
# 设置环境变量
ENV PYTHONUNBUFFERED=1
# 默认命令
CMD ["python", "cli.py", "--help"]
```
### 2. 创建 .dockerignore
```
.git
.gitignore
__pycache__
*.pyc
*.pyo
*.pyd
venv
.env
logs/
backups/
archive/
build/
dist/
*.spec
.DS_Store
```
### 3. 构建镜像
```bash
docker build -t article-replace:latest .
```
### 4. 运行容器
```bash
# 交互式运行
docker run -it --rm \
-v $(pwd)/data:/app/data \
-v $(pwd)/logs:/app/logs \
article-replace:latest \
python cli.py --excel /app/data/articles.xlsx --threads 3
# 后台运行
docker run -d \
--name article-replace \
-v $(pwd)/data:/app/data \
-v $(pwd)/logs:/app/logs \
article-replace:latest \
python cli.py --excel /app/data/articles.xlsx --threads 3
# 查看日志
docker logs -f article-replace
```
### 5. 使用 Docker Compose
**创建 docker-compose.yml:**
```yaml
version: '3.8'
services:
article-replace:
build: .
container_name: article-replace
volumes:
- ./data:/app/data
- ./logs:/app/logs
- ./config:/app/config
environment:
- PYTHONUNBUFFERED=1
command: python cli.py --excel /app/data/articles.xlsx --threads 3
restart: unless-stopped
```
**启动服务:**
```bash
docker-compose up -d
# 查看日志
docker-compose logs -f
# 停止服务
docker-compose down
```
---
## 监控和维护
### 日志管理
```bash
# 查看应用日志
tail -f logs/article_replace.log
# 清理旧日志
find logs/ -name "*.log" -mtime +7 -delete
```
### 备份管理
```bash
# 备份配置
cp config.ini backups/config_$(date +%Y%m%d).ini
# 备份数据
tar -czf backups/data_$(date +%Y%m%d).tar.gz articles/ picture/
```
### 性能监控
```bash
# 查看进程状态
ps aux | grep ArticleReplace
# 查看内存使用
top -p $(pgrep -f ArticleReplace)
```
---
## 安全建议
1. **环境变量**: 不要将敏感信息提交到版本控制系统
2. **文件权限**: 确保 `.env` 文件权限设置为 600
3. **防火墙**: 如果暴露端口,配置防火墙规则
4. **更新**: 定期更新依赖包以修复安全漏洞
---
## 常见问题
### Q: 无GUI环境下如何运行
A: 使用命令行模式或 xvfb。
```bash
# 使用命令行模式
python cli.py --excel articles.xlsx --threads 3
# 或使用 xvfb (Linux)
xvfb-run -a python ArticleReplace.py
```
### Q: 如何处理依赖冲突?
A: 使用虚拟环境隔离依赖。
```bash
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
```
### Q: 如何设置开机自启?
A: 使用 systemd 服务Linux或任务计划程序Windows
### Q: 内存不足怎么办?
A: 增加系统内存或减少并发线程数。
```bash
# 减少线程数
python cli.py --excel articles.xlsx --threads 1
```
---
## 升级指南
### 1. 备份数据
```bash
# 备份配置和数据
cp config.ini backups/
tar -czf backups/data_backup_$(date +%Y%m%d).tar.gz articles/ picture/
```
### 2. 获取新版本
```bash
git pull origin main
```
### 3. 更新依赖
```bash
pip install -r requirements.txt --upgrade
```
### 4. 验证升级
```bash
python dev.py test
```
### 5. 重启服务
```bash
sudo systemctl restart article-replace
# 或
docker-compose restart
```
---
**文档版本**: v1.0
**最后更新**: 2026-03-07
**维护者**: opencode

361
docs/DEVELOPER_GUIDE.md Normal file
View File

@@ -0,0 +1,361 @@
# 开发者指南
本文档提供了ArticleReplaceBatch项目的开发者指南。
---
## 目录
- [开发环境搭建](#开发环境搭建)
- [项目结构](#项目结构)
- [代码规范](#代码规范)
- [测试指南](#测试指南)
- [贡献指南](#贡献指南)
- [常见问题](#常见问题)
---
## 开发环境搭建
### 1. 克隆项目
```bash
git clone <repository-url>
cd ArticleReplaceBatch
```
### 2. 创建虚拟环境
```bash
# 使用venv
python -m venv venv
# Windows
venv\Scripts\activate
# Linux/Mac
source venv/bin/activate
```
### 3. 安装依赖
```bash
# 安装核心依赖
pip install -r requirements.txt
# 安装开发依赖
pip install -e ".[dev]"
```
### 4. 配置环境变量
```bash
cp .env.example .env
# 编辑 .env 文件,填写必要的配置
```
### 5. 验证安装
```bash
# 运行测试
python dev.py test
# 检查代码
python dev.py lint
```
---
## 项目结构
```
ArticleReplaceBatch/
├── src/ # 源代码
│ ├── ui/ # UI组件
│ │ ├── __init__.py
│ │ ├── main_window.py # 主窗口
│ │ ├── main_frame.py # 主页面
│ │ ├── config_frame.py # 配置页面
│ │ ├── disclaimer_frame.py # 免责声明
│ │ └── log_handler.py # 日志处理器
│ ├── services/ # 服务层
│ │ ├── __init__.py
│ │ ├── web_scraping.py # 网页抓取服务
│ │ ├── image_processing.py # 图片处理服务
│ │ └── ai_service.py # AI服务
│ └── utils/ # 工具
│ ├── __init__.py
│ └── validation.py # 数据验证
├── tests/ # 测试
│ ├── __init__.py
│ ├── conftest.py # pytest配置
│ ├── test_config.py # 配置测试
│ ├── test_main_process.py # 主流程测试
│ ├── test_images_edit.py # 图片处理测试
│ ├── test_config_manager.py # 配置管理器测试
│ ├── test_ui.py # UI测试
│ ├── test_integration.py # 集成测试
│ ├── test_services.py # 服务测试
│ └── test_performance.py # 性能测试
├── scripts/ # 开发脚本
│ ├── __init__.py
│ ├── format_code.py # 代码格式化
│ └── run_tests.py # 测试运行
├── docs/ # 文档
│ └── API.md # API文档
├── examples/ # 示例
│ └── sample_data.json # 示例数据
├── archive/ # 备份归档
├── backups/ # 备份文件
├── logs/ # 日志文件
├── .env.example # 环境变量模板
├── .gitignore # Git配置
├── pyproject.toml # 项目配置
├── requirements.txt # 依赖列表
├── config_manager.py # 配置管理器
├── cli.py # 命令行接口
├── dev.py # 开发工具
├── ArticleReplace.py # GUI应用
├── README.md # 项目说明
├── CHANGELOG.md # 更新日志
└── DEVELOPER_GUIDE.md # 开发者指南
```
---
## 代码规范
### Python代码风格
项目遵循以下代码风格指南:
1. **PEP 8**: Python代码风格指南
2. **类型提示**: 使用类型注解
3. **文档字符串**: 使用docstring
4. **命名规范**: 遵循PEP 8命名约定
### 格式化工具
```bash
# 格式化代码
python dev.py format
# 或分别运行
black .
isort .
```
### 代码检查
```bash
# 代码检查
python dev.py lint
# 类型检查
python dev.py typecheck
```
### 命名约定
- **类名**: PascalCase`WebScrapingService`
- **函数名**: snake_case`extract_content`
- **常量名**: UPPER_CASE`MAX_THREADS`
- **私有变量**: _leading_underscore`_config`
---
## 测试指南
### 运行测试
```bash
# 运行所有测试
python dev.py test
# 运行特定测试
pytest tests/test_config.py -v
# 生成覆盖率报告
pytest tests/ --cov=. --cov-report=html
```
### 编写测试
测试文件应放在`tests/`目录下,命名为`test_*.py`
```python
import pytest
from src.services.web_scraping import WebScrapingService
class TestWebScrapingService:
"""测试网页抓取服务"""
def test_service_creation(self):
"""测试创建服务"""
service = WebScrapingService(max_workers=5)
assert service.max_workers == 5
def test_extract_content(self):
"""测试提取内容"""
from unittest.mock import patch
service = WebScrapingService()
with patch('src.services.web_scraping.extract_content_with_retry') as mock:
mock.return_value = ("标题", "内容", [])
results = service.extract_content_async(["http://example.com"])
assert len(results) == 1
```
### 测试覆盖率
目标测试覆盖率:> 70%
```bash
# 查看覆盖率报告
pytest tests/ --cov=. --cov-report=term-missing
```
---
## 贡献指南
### 提交代码
1. 确保代码通过所有测试
2. 确保代码通过格式检查
3. 更新相关文档
4. 提交Pull Request
### Commit Message格式
```
<type>(<scope>): <subject>
<body>
<footer>
```
**Type:**
- `feat`: 新功能
- `fix`: 修复bug
- `docs`: 文档更新
- `style`: 代码格式(不影响功能)
- `refactor`: 重构
- `test`: 测试相关
- `chore`: 构建/工具相关
**示例:**
```
feat(services): 添加批量图片处理功能
- 新增ImageProcessingService类
- 支持异步处理多个图片
- 添加进度回调功能
Closes #123
```
### Pull Request流程
1. Fork项目
2. 创建特性分支
3. 提交更改
4. 推送到分支
5. 创建Pull Request
---
## 常见问题
### Q: 如何添加新的AI服务
A: 在`src/services/ai_service.py`中创建新的服务类,继承`AIService`基类。
```python
class CustomAIService(AIService):
def __init__(self):
super().__init__("custom")
def call(self, parameters):
# 实现自定义AI调用
pass
```
### Q: 如何添加新的UI组件
A: 在`src/ui/`中创建新的模块,然后在`main_window.py`中引入使用。
### Q: 如何调试问题?
A: 使用日志系统设置日志级别为DEBUG。
```python
import logging
logging.basicConfig(level=logging.DEBUG)
```
### Q: 如何打包应用?
A: 使用PyInstaller。
```bash
python dev.py build
```
### Q: 性能优化建议?
A:
1. 使用异步处理
2. 添加缓存机制
3. 批量处理数据
4. 优化数据库查询
---
## 开发工具
### dev.py
统一的开发工具入口。
```bash
# 查看帮助
python dev.py --help
# 可用命令
python dev.py format # 格式化代码
python dev.py test # 运行测试
python dev.py lint # 代码检查
python dev.py typecheck # 类型检查
python dev.py build # 打包应用
python dev.py clean # 清理构建
```
---
## 资源链接
- [Python文档](https://docs.python.org/3/)
- [pytest文档](https://docs.pytest.org/)
- [CustomTkinter文档](https://customtkinter.com/)
- [项目CHANGELOG](../CHANGELOG.md)
- [API文档](./API.md)
---
## 联系方式
如有问题,请通过以下方式联系:
- 提交Issue
- 发送Pull Request
- 联系项目维护者
---
**文档版本**: v1.0
**最后更新**: 2026-03-07
**维护者**: opencode

106
docs/QUICKSTART.md Normal file
View File

@@ -0,0 +1,106 @@
# 快速开始指南
本文档提供了ArticleReplaceBatch的快速开始指南。
---
## 安装
### 1. 克隆项目
```bash
git clone <repository-url>
cd ArticleReplaceBatch
```
### 2. 安装依赖
```bash
pip install -r requirements.txt
```
### 3. 配置环境
```bash
cp .env.example .env
# 编辑 .env 文件,填写必要的配置
```
---
## 基本使用
### GUI模式
```bash
python ArticleReplace.py
```
### 命令行模式
```bash
# 处理Excel文件
python cli.py --excel 文章链接.xlsx --threads 3
# 处理单个链接
python cli.py --link https://www.toutiao.com/article/123
# 查看帮助
python cli.py --help
```
---
## 配置说明
主要配置文件:`config.ini`
### Coze配置
```ini
[Coze]
workflow_id = your_workflow_id
access_token = your_access_token
is_async = true
```
### 常规配置
```ini
[General]
max_threads = 3
min_article_length = 100
articles_path = articles
images_path = picture
```
---
## 开发
### 运行测试
```bash
python dev.py test
```
### 代码格式化
```bash
python dev.py format
```
### 代码检查
```bash
python dev.py lint
```
---
## 更多信息
- [完整文档](../README.md)
- [API文档](./API.md)
- [开发者指南](./DEVELOPER_GUIDE.md)
- [部署指南](./DEPLOYMENT_GUIDE.md)

38
docs/README.md Normal file
View File

@@ -0,0 +1,38 @@
# 文档索引
本文档提供了ArticleReplaceBatch项目的所有文档索引。
---
## 用户文档
- [快速开始指南](QUICKSTART.md) - 快速上手指南
- [项目说明](../README.md) - 项目概述和功能介绍
- [更新日志](../CHANGELOG.md) - 版本变更历史
## 开发文档
- [开发者指南](DEVELOPER_GUIDE.md) - 开发环境搭建和贡献指南
- [API文档](API.md) - API参考手册
- [部署指南](DEPLOYMENT_GUIDE.md) - 部署和运维指南
## 重构文档
- [P0级重构报告](../REFACTORING_REPORT.md) - P0级任务执行报告
- [P1级任务报告](../P1_REPORT.md) - P1级任务执行报告
- [重构总结](../SYSTEM_REFACTORING_SUMMARY.md) - 系统重构总结
- [最终总结](../FINAL_SUMMARY.md) - 最终总结报告
## 交付文档
- [交付文档](../DELIVERY_DOCUMENT.md) - 完整交付文档
- [交付清单](../DELIVERY_CHECKLIST.md) - 交付物清单
## 示例
- [示例数据](../examples/sample_data.json) - 示例数据文件
---
**文档版本**: v1.0
**最后更新**: 2026-03-07