wechat mp draft
v1.0.0代写微信公众号文章并保存到公众号草稿箱。使用场景:用户需要撰写公众号文章并直接发布到微信公众号后台草稿箱。触发词:"写公众号文章"、"保存到公众号草稿"、"微信文章"、"公众号发文"。
运行时依赖
安装命令
点击复制本土化适配说明
wechat mp draft 安装说明: 安装命令:["openclaw skills install wechat-mp-draft"] 该技能用于微信、公众号相关操作,可能需要相应的平台账号或API密钥
技能文档
微信公众号草稿 技能
代写微信公众号文章并保存到草稿箱。
前置条件
需要以下凭证(需自行配置):
应用ID: wxYOUR_应用ID_HERE 应用Secret: YOUR_SECRET_HERE
获取方式: 微信公众平台 → 设置与开发 → 基本配置
重要: 服务器 IP 必须添加到公众号后台的 IP 白名单中。
工作流程
- 获取 访问 令牌
- 上传封面图片(获取 thumb_media_id)
封面图片是必填项!
./scripts/上传_image.sh <访问_令牌> <图片路径>
返回示例:
{"media_id":"xxx","url":"http://mmbiz.qpic.cn/..."}
- 撰写文章并保存到草稿箱
关键问题与解决方案 ❌ 问题 1:40007 invalid media_id
原因:
thumb_media_id 是必填字段 封面图片必须是永久素材(通过 添加_material 接口上传)
解决: 必须先上传封面图片获取 thumb_media_id:
curl -F "media=@cover.jpg" "https://API.weixin.qq.com/cgi-bin/material/添加_material?访问_令牌=令牌&type=image"
❌ 问题 2:IP 不在白名单(40164)
解决: 登录微信公众平台 → 设置与开发 → 基本配置 → IP白名单 → 添加服务器 IP
❌ 问题 3:HTML 内容格式错误
解决:
HTML 中的换行符会导致 JSON 解析失败 必须将换行符替换为空格 使用 tr '\n' ' ' 处理 完整使用示例 # 1. 获取 令牌 令牌=$(./scripts/获取_访问_令牌.sh | jq -r '.访问_令牌')
# 2. 上传封面图 THUMB_响应=$(./scripts/上传_image.sh "$令牌" /path/to/cover.jpg) THUMB_ID=$(echo "$THUMB_响应" | jq -r '.media_id')
# 3. 准备文章内容(HTML 格式) CONTENT='
这里是文章内容...
'# 4. 保存草稿 ./scripts/添加_draft.sh "$令牌" "文章标题" "$CONTENT" "$THUMB_ID" "作者" "摘要"
API 参数说明 新增草稿必填字段 字段 类型 必填 说明 title string 是 标题,不超过32字 content string 是 HTML内容,不超过2万字符 thumb_media_id string 是 封面图片永久素材ID author string 否 作者,不超过16字 digest string 否 摘要,不超过128字 show_cover_pic number 否 是否显示封面,0/1 need_open_comment number 否 是否打开评论,0/1 only_fans_can_comment number 否 是否仅粉丝可评论,0/1 支持的 HTML 标签
- 段落
- 换行