Appearance
发布能力
发布这一步最容易出事故,所以规则写死:一次一条、失败退回、成功才落账。
账号管理
在「账号」页扫码登录要接管的账号,Cookie 存本机 runtime/cookies/。可按平台与账号筛选参与发布的账号,禁用账号不参与。开启「每日自动检测登录」可在 Cookie 失效前收到提醒。
发布流程
- 按平台查询本地待发布记录
- 逐账号从待发队列 claim 一条(pending → running)
- 准备媒体与字幕,检测该账号 Cookie 有效性
- 按平台规则填写标题、正文、标签并发布
- 回写该平台的 success / failed;失败则 release 回 pending
claim 机制
| 约束 | 作用 |
|---|---|
| 每个账号每次运行只发布 1 条 | 避免一个账号短时间连发被限流 |
| pending → running 用条件更新 | 多账号、多进程不抢同一条 |
| 失败 release 回 pending | 重跑补发,不会漏 |
| 每平台独立状态 | 某个平台失败不影响其他平台判定 |
Cookie 检测
发布前逐个检测账号 Cookie。失效时会进入登录流程:本机有显示器且有头(默认)时可扫码登录;无头环境(CI、定时任务)无法扫码,需先在本地有头登录并更新 Cookie。
清理策略
全部已配置且有账号的平台都 success 后,才允许删除该笔记的原片目录,避免删了还没发出去的素材。
数据在哪
| 数据 | 位置 |
|---|---|
| 账号库 | 本机 runtime/db/database.db |
| 平台发布状态 | 本机 runtime/db/notes.db |
| 发布日志 | 本机 runtime/db/publish_logs.db |
| Cookie | 本机 runtime/cookies/ |
