绕道发布 ChatGPT·Claude·Gemini 文章到博客 — 用单行 curl 活用 LLM 免费额度

2 min read · 416 words

使用技巧 / 博客运营 / Python · API
约 2,400 字

使用 LLM 撰写博客文章时,最常见的模式是在 ChatGPT 或 Claude 的聊天窗口中输入“帮我写一篇关于这个主题的指南文章”,然后手动复制生成的 HTML 并粘贴到 Blogger 管理后台的 UI 中。这需要花费 5 分钟,而且每次都需要重新配置标签、元描述(Meta Description)和分类。为此,我们创建了一个旁路端点(endpoint),只需一行 curl 就能将 LLM 的聊天输出直接发送到 Blogger 草稿箱(DRAFT)。

创建原因

直接调用 LLM API(例如 Anthropic / Google)会产生累积的 Token 费用,每篇文章大约需要花费 $0.10-0.50。100 篇文章就是 $10-50。对于像我们网站这样由个人运营的博客来说,这是一笔不小的负担。

相比之下,订阅 ChatGPT Plus / Claude Pro / Gemini Advanced 每月只需 $20 固定费用。即使一个月写 100 篇文章,也不会产生额外费用。然而,“聊天窗口 → 博客”的复制粘贴工作流实在太慢,导致人们最终还是不得不回到 API 调用。

解决方案:将 LLM 聊天中获取的 HTML 发送到 Web 应用的发布端点一行命令即可 → 自动注入标签/元数据/图表 / 通过 SEO 元数据验证钩子链(hook chain) → 自动保存为 Blogger 草稿(DRAFT)。人要做的事情只有在聊天中获取回答后,运行一次 curl。

只需每月 $20 的固定订阅费,就能让 100 篇文章全部通过 Web 应用的发布钩子链(清理 / 质量门禁 / 5 个索引渠道)并成功发布。

工作原理

Web 应用中有一个独立的端点 POST /api/writer/external-publish

请求格式 (Request shape)


{
 "title": "글 제목",
 "content_html": "<p>본문 HTML...</p><h2>섹션</h2>...",
 "label": "활용 팁",
 "post_type": "guide",
 "primary_keyword": "키워드",
 "meta_description": "100-160자 메타 설명"
}

只需将从 LLM 聊天中获取的 HTML 直接放入 content_html,并填好其余 5 个字段即可。

服务器处理

  1. 身份验证 — 仅限本地主机 (127.0.0.1)。不对外暴露。
  2. 标签规范化 (Label normalize) — 将类似 ["활용 팁", "사용팁", "tips"] 的变体输入自动映射到网站的 6 个规范标签(canonical label)之一。如果不是已知标签,则返回 {"error":"unknown_label","allowed":["..."]} 响应。
  3. HTML 检查 — 剥离