# 宇之然内容管理平台 > 自动化内容生产 + Web 管理界面 一个可持续、可管理的内容创业系统,实现从选题采集到多平台发布的全流程自动化。 --- ## 🎯 核心能力 - ✅ **全自动流水线**:采集 → 创作 → 合规 → 发布准备(每日凌晨运行) - ✅ **Web 管理界面**:一键控制、实时监控、可视化发布包管理 - ✅ **降级策略**:外部源失效时自动切换本地案例库,保证稳定产出 - ✅ **多平台支持**:知乎、小红书、微信公众号(HTML 发布包) - ✅ **风控设计**:半自动发布(生成 HTML + 人工复制),避免平台封号 --- ## 📦 项目结构(简洁版) ``` yu-zhi-ran/ ├── platform/ # Web 管理平台(FastAPI + Vue 3) │ ├── backend/ # API 服务 │ └── frontend/ # 管理界面 ├── automation/ # 自动化数据 + 日志 │ ├── data/ # JSON 选题库、草稿、发布包 │ ├── logs/ # 运行日志 │ └── scripts/ → ../scripts/ # 软链到 scripts/ ├── scripts/ # CLI 脚本(collector, creator, optimizer...) ├── content/ # 已发布内容存储 ├── config/ # 配置文件(RSS源、机器人) ├── start-platform.sh # 快速启动管理平台 └── README_NEW.md # 本文档 ``` --- ## 🚀 快速开始 ### 1️⃣ 启动管理平台(推荐) ```bash cd /root/openclaw-workspace/projects/yu-zhi-ran ./start-platform.sh 8001 ``` 访问: - 界面:http://localhost:8001/ - API 文档:http://localhost:8001/docs ### 2️⃣ 测试自动化流水线 ```bash cd /root/openclaw-workspace/projects/yu-zhi-ran python test_full_pipeline.py --topic-id A01 ``` 预期输出: - 生成 `automation/data/drafts/2026-04-19/A01_*.md` - 生成 `automation/data/releases/2026-04-19/*/A01_*.html` - 合规自动通过 ### 3️⃣ 查看当前状态 ```bash # 选题库统计 python -c "import json; d=json.load(open('automation/data/sustainability_topics.json')); print(f'总{len(d)} 待处理:{sum(1 for t in d if t.get(\"status\")==\"待处理\")} 待发布:{sum(1 for t in d if t.get(\"status\")==\"待发布\")}')" # 日志(今日) tail -f automation/logs/creator_$(date +%Y-%m-%d).log ``` --- ## 🔄 系统架构 ``` 定时任务 (cron) │ ├─▶ 05:00 collector.py → automation/data/sustainability_topics.json(选题) ├─▶ 05:30 creator.py → drafts/ + releases/(HTML) ├─▶ 05:45 optimizer.py → 合规报告 └─▶ 06:00 publisher.py → content/published/(发布包) Web 平台(可选控制) │ ├─▶ 一键触发创作/优化 ├─▶ 查看选题列表和详情 ├─▶ 生成发布包、预览HTML、复制 └─▶ 查看实时流水线状态 ``` --- ## 📊 当前运行状态(2026-04-19) | 指标 | 数值 | |------|------| | 总选题数 | 22 | | 待处理 | 20 | | 待发布 | 2 (A01, A02) | | 自动运行 | ✅ 正常(05:00-06:00) | | 最新运行 | A02(05:30 完成,8秒) | | 合规通过率 | 100%(3/3) | 待发布内容已就绪,可手动发布到知乎/小红书。 --- ## 🎮 主要操作指南 ### 触发创作任务 **Web 界面**:平台 → "运行创作任务" 按钮 **或命令行**: ```bash python scripts/creator.py --topic-id A03 ``` ### 生成发布包 **Web 界面**:选题 → 发布 → "重新生成" **或命令行**: ```bash python scripts/publisher.py --topic-id A01 ``` 发布包位置: ``` content/published/A01/手动发布/ ├── 知乎/文章.html └── 小红书/文章.html ``` ### 标记为已发布 在 Web 界面"发布管理"中填写各平台链接 → "确认发布" 这会更新选题状态为"已发布"并保存链接。 --- ## ⚙️ 配置 ### 数据源(automation/config/sources.yaml) ```yaml sources: - name: "新华网-环保频道" type: "rss" url: "http://..." - name: "本地案例库" type: "local_markdown" path: "automation/data/cases.md" ``` ### 环境变量(platform/.env,可选) ```bash PROJECT_ROOT=/root/openclaw-workspace/projects/yu-zhi-ran LOG_LEVEL=INFO ``` --- ## 📝 开发调试 ```bash # 1. 检查环境 cd platform python check.py # 2. 启动服务(开发模式) ./run.sh 8000 # 3. 查看 API 日志(新终端) tail -f automation/logs/creator_$(date +%Y-%m-%d).log # 4. 重置数据库(如需) rm -f data/yzr.db cd platform/backend python -c "from app.database import init_db; init_db(); from app.initial_data import import_topics_from_json; import_topics_from_json()" ``` --- ## 🚧 注意事项 ### 路径规范 所有 `platform/backend/app/**/*.py` 必须使用相对路径计算 `PROJECT_ROOT`: - `app/database.py`, `initial_data.py`: `Path(__file__).resolve().parents[3]` - `app/api/*.py`, `app/core/*.py`: `Path(__file__).resolve().parents[4]` 禁止使用硬编码绝对路径! ### 软链接 ``` platform/data → ../data platform/logs → ../logs automation/scripts → ../scripts/ ``` 这些链接确保平台和自动化模块共享数据。 ### 数据流向 **唯一真理源**:`automation/data/sustainability_topics.json` - 所有状态更新(待处理 → 待发布 → 已发布)都应写入此 JSON - `platform` 通过 `sync.py` 同步到 SQLite 供前端快速查询 - 不要直接修改数据库而不更新 JSON! --- ## 📚 详细文档 - `YUZHIRAN_PLATFORM.md` - 完整项目文档(架构、API、扩展) - `platform/PORTFOLIO.md` - 平台架构详解 - `platform/README.md` - 平台使用说明 - `PROJECT_STRUCTURE.md` - 目录结构说明 --- ## 🐛 故障排查 | 问题 | 检查点 | 命令 | |------|--------|------| | Web 界面无数据 | JSON 是否同步? | `curl http://localhost:8000/api/system/status` | | 创作失败 | creator 日志 | `tail -n 50 automation/logs/creator_*.log` | | 发布包缺失 | releases 目录 | `ls automation/data/releases/$(date +%Y-%m-%d)/` | | 端口占用 | 8000 被谁用? | `lsof -i:8000` | --- ## 🎉 现状总结 昨天(4月18日)完成: - 数据源切换(新华网+人民网) - 降级策略(本地案例库保底) - 锁机制(2小时超时) - publisher 发布包系统 - 前端管理界面 今天(4月19日): - 统一项目结构,整合 platform + automation - 修正所有路径计算 - 添加软链接统一数据目录 - 创建启动脚本和文档 **状态**:✅ 系统稳定运行,每日自动产出内容,Web 平台就绪。 --- **维护**: AI 助手小然 **更新**: 2026-04-19