Back to Registry
View Author Profile
Official Verified
wechat-article-publisher
微信公众号文章排版和发布技能。提供专业排版模板、图片上传、草稿发布等完整工作流。使用场景:(1) 创建公众号文章,(2) 上传图片到素材库,(3) 发布草稿到微信后台,(4) 装修案例/干货分享/客户故事等类型文章。
skill-install — Terminal
Install via CLI (Recommended)
clawhub install openclaw/skills/skills/chenyd002025/jvs-wechat-article-publisherOr
WeChat Article Publisher
微信公众号文章排版和发布技能。
📋 使用前准备(首次使用必读!)
1. 微信公众号要求
- ✅ 需要已注册的微信公众号(服务号或订阅号均可)
- ✅ 需要公众号的 AppID 和 AppSecret
- ⚠️ 公众号需要通过微信认证(未认证账号部分 API 受限)
2. 获取 AppID 和 AppSecret
- 登录 微信公众平台
- 进入 开发 → 基本配置
- 复制 开发者 ID 中的:
AppID(应用 ID)- 类似你的 APPIDAppSecret(应用密钥)- 类似你的 APPSECRET
3. 配置 IP 白名单(重要!)
微信 API 要求配置服务器 IP 白名单:
- 在 开发 → 基本配置 页面
- 找到 IP 白名单 设置
- 添加你的服务器公网 IP:
- 本地测试:查询本机公网 IP(访问 https://ip.sb)
- 服务器:填写服务器的公网 IP 地址
- 可添加多个 IP,用逗号分隔
常见 IP 白名单配置:
{
"ipWhitelist": ["你的公网 IP", "你的服务器 IP 2", "你的服务器 IP 1"]
}
4. 创建配置文件
在技能目录创建 config.json:
{
"appId": "你的 AppID",
"appSecret": "你的 AppSecret",
"ipWhitelist": ["你的公网 IP"]
}
⚠️ 安全提醒:
config.json包含敏感信息,不要上传到 ClawHub- 只保留
config.example.json作为示例 - 真实配置文件应加入
.gitignore
5. 验证配置
运行测试命令验证配置是否正确:
# 获取 token(成功会返回一串字符)
curl -s "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=你的 APPID&secret=你的 APPSECRET"
成功响应:
{"access_token":"ACCESS_TOKEN","expires_in":7200}
失败响应:
{"errcode":40013,"errmsg":"invalid appid"}
🔴 严重警告:中文乱码问题(必读!)
问题现象:发布后文章内容显示为 <p>这是文字</p> 标签,而不是正常中文。
根本原因:
- ❌ Python requests 库默认编码不是 UTF-8
- ❌ Content-Type 头未指定
charset=utf-8 - ❌ Token 过期导致 API 异常处理
✅ 正确解决方案(必须遵守!):
# ========== 第 1 步:获取最新 token(每次发布前都要重新获取!) ==========
TOKEN=$(curl -s "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=SECRET" | python3 -c "import sys,json; print(json.load(sys.stdin).get('access_token',''))")
# ========== 第 2 步:上传封面图 ==========
COVER=$(curl -s -X POST "https://api.weixin.qq.com/cgi-bin/material/add_material?access_token=$TOKEN&type=image" -F "media=@/path/to/cover.jpg" | python3 -c "import sys,json; print(json.load(sys.stdin).get('media_id',''))")
# ========== 第 3 步:发布草稿(关键:-H "Content-Type: application/json; charset=utf-8") ==========
curl -s -X POST "https://api.weixin.qq.com/cgi-bin/draft/add?access_token=$TOKEN" \
-H "Content-Type: application/json; charset=utf-8" \
-d "{\"articles\":[{\"title\":\"标题\",\"content\":\"<p>中文内容</p>\",\"thumb_media_id\":\"$COVER\"}]}"
⚠️ 四个必须(缺一不可!):
- ✅ 每次发布前都重新获取 token - token 有效期只有 2 小时
- ✅ 必须指定
charset=utf-8--H "Content-Type: application/json; charset=utf-8" - ✅ 必须用 curl 命令 - 不要用 Python requests(编码不可靠)
- ✅ 必须手机扫码预览 - PC 预览可能显示 Unicode(未验证账号)
🧪 测试命令(发布前先用这个验证编码):
curl -s -X POST "https://api.weixin.qq.com/cgi-bin/draft/add?access_token=$TOKEN" \
-H "Content-Type: application/json; charset=utf-8" \
-d "{\"articles\":[{\"title\":\"测试文字\",\"content\":\"<p>这是中文测试</p><p>能看到吗</p>\",\"thumb_media_id\":\"$COVER\"}]}"
❌ 错误做法(不要再犯!):
- 使用 Python
requests.post(url, json=data)直接发布 - 复用旧 token(超过 2 小时)
- 不指定
charset=utf-8 - 只在 PC 端预览,不用手机扫码
快速开始
发布文章(推荐方式)
Metadata
AI Skill Finder
Not sure this is the right skill?
Describe what you want to build — we'll match you to the best skill from 16,000+ options.
Find the right skill Add to Configuration
Paste this into your clawhub.json to enable this plugin.
{
"plugins": {
"official-chenyd002025-jvs-wechat-article-publisher": {
"enabled": true,
"auto_update": true
}
}
}Safety NoteClawKit audits metadata but not runtime behavior. Use with caution.