微信公众号文章发布技能

Polar Sponsor
爱发电 赞助
.NET 9.0

微信公众号文章排版和发布技能。提供专业排版模板、图片上传、草稿发布等完整工作流。使用场景:(1) 创建公众号文章,(2) 上传图片到素材库,(3) 发布草稿到微信后台,(4) 装修案例/干货分享/客户故事等类型文章。

WeChat Article Publisher

功能概述

WeChat Article Publisher是一项面向实际任务的技能,主要用于微信公众号文章排版和发布技能;📋 使用前准备(首次使用必读!

核心要点

  • 1. 微信公众号要求;
  • ✅ 需要已注册的 微信公众号 (服务号或订阅号均可);
  • ✅ 需要公众号的 AppID 和 AppSecret;

使用与执行

⚠️ 公众号需要通过微信认证(未认证账号部分 API 受限);2. 获取 AppID 和 AppSecret;登录 微信公众平台;进入 开发 → 基本配置。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。

结果检查与注意事项

实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。

WeChat Article Publisher

微信公众号文章排版和发布技能。

📋 使用前准备(首次使用必读!)

1. 微信公众号要求

  • ✅ 需要已注册的微信公众号(服务号或订阅号均可)
  • ✅ 需要公众号的 AppID 和 AppSecret
  • ⚠️ 公众号需要通过微信认证(未认证账号部分 API 受限)

2. 获取 AppID 和 AppSecret

  1. 登录 微信公众平台
  2. 进入 开发 → 基本配置
  3. 复制 开发者 ID 中的:
    • AppID(应用 ID) - 类似 你的 APPID
    • AppSecret(应用密钥) - 类似 你的 APPSECRET

3. 配置 IP 白名单(重要!)

微信 API 要求配置服务器 IP 白名单:

  1. 在 开发 → 基本配置 页面
  2. 找到 IP 白名单 设置
  3. 添加你的服务器公网 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"}

🔴 严重警告:中文乱码问题(必读!)

问题现象:发布后文章内容显示为

这是文字

标签,而不是正常中文。

根本原因:

  1. ❌ Python requests 库默认编码不是 UTF-8
  2. ❌ Content-Type 头未指定 charset=utf-8
  3. ❌ 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":"

中文内容

","thumb_media_id":"$COVER"}]}"

⚠️ 四个必须(缺一不可!):

  1. ✅ 每次发布前都重新获取 token - token 有效期只有 2 小时
  2. ✅ 必须指定 charset=utf-8 - -H "Content-Type: application/json; charset=utf-8"
  3. ✅ 必须用 curl 命令 - 不要用 Python requests(编码不可靠)
  4. ✅ 必须手机扫码预览 - 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":"

这是中文测试

能看到吗

","thumb_media_id":"$COVER"}]}"

❌ 错误做法(不要再犯!):

  • 使用 Python requests.post(url, json=data) 直接发布
  • 复用旧 token(超过 2 小时)
  • 不指定 charset=utf-8
  • 只在 PC 端预览,不用手机扫码

快速开始

发布文章(推荐方式)

# 使用 curl 命令发布(见上方「严重警告」章节的完整命令)

上传图片

python3 scripts/upload_images.py /path/to/images/

排版模板

专业版模板(推荐)

适用于装修案例、实景展示等专业内容。

特点:

  • 英文 + 中文双语标题(如 LIVING ROOM · 客厅)
  • 奶油色配色方案(#f5e6d3、#8b7355)
  • 标题底部装饰线
  • 表格相间背景色
  • 预约框圆角背景

模板文件: assets/templates/professional.md

简洁版模板

适用于快讯、通知等简单内容。

模板文件: assets/templates/simple.md

文章结构

标准结构

  1. 封面大图 - 标题后第一张就是图片
  2. 项目信息 - 小区/面积/风格/造价表格
  3. 空间展示 - 客厅/餐厅/卧室/厨房等
  4. 费用明细 - 分类费用表格
  5. 改造亮点 - 项目亮点列表
  6. 预约量房 - CTA 行动号召
  7. 联系我们 - 公司信息

图片规则

  • 每个空间 1-2 张图
  • 图片宽度 100%,最大 600px
  • 图片间留白 20px
  • 封面图单独指定

发布流程

步骤 1:准备文章

# 文章标题



---

## 空间 1



说明文字

---

## 空间 2

...

步骤 2:上传图片

python3 scripts/upload_images.py /path/to/images/
# 输出图片 URL 列表

步骤 3:插入 URL

将上传的图片 URL 替换文章中的占位符。

步骤 4:发布草稿

唯一推荐方式(curl 命令):

# 1. 获取 token
TOKEN=$(curl -s "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=你的 APPID&secret=你的 APPSECRET" | 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":"

中文内容

","thumb_media_id":"$COVER"}]}"

❌ 禁止使用 Python 脚本直接发布(会导致乱码)

步骤 5:手动发表

登录微信后台 → 草稿箱 → 检查 → 点发表

配置

配置文件:config.json

{
  "appId": "你的 AppID",
  "appSecret": "你的 AppSecret",
  "ipWhitelist": ["你的服务器 IP 1", "你的服务器 IP 2"]
}

常见问题

🔴 中文乱码(最重要!)

现象:文章显示为

这是文字

标签

原因:编码格式不正确

解决方案:

  1. 使用 curl 命令发布
  2. 必须指定 -H "Content-Type: application/json; charset=utf-8"
  3. 每次发布前重新获取 token

API 48001 错误

微信 API 未授权,无法直接发布。

解决方案: 使用草稿 API + 手动发表工作流。

图片不显示

图片未上传到微信素材库。

解决方案: 先用 upload_images.py 上传图片获取 URL。

排版错乱

Markdown 格式不正确。

解决方案: 使用提供的模板文件。

脚本说明

publish_wechat.py

发布文章到微信草稿箱。

python3 scripts/publish_wechat.py  [options]

选项:
  --template      模板名称 (viral/professional/simple)
  --cover-image   封面图路径
  --output        输出 HTML 路径

⚠️ 注意:此脚本可能导致中文乱码,建议使用 curl 命令替代。

upload_images.py

批量上传图片到微信素材库。

python3 scripts/upload_images.py 

输出:
  图片 URL JSON 文件

内容栏目

7 栏目规划

  1. 实景案例 - 完工项目实景拍摄
  2. 干货分享 - 装修知识/避坑指南
  3. 客户故事 - 业主访谈/入住反馈
  4. 工地实况 - 施工进度/工艺展示
  5. 材料科普 - 主材/辅材知识
  6. 问答互动 - 常见问题解答
  7. 活动促销 - 优惠活动/套餐

参考链接

  • 微信公众平台:https://mp.weixin.qq.com
  • 微信 API 文档:https://developers.weixin.qq.com/doc/offiaccount/
  • 排版参考:见 references/ 目录

公司信息模板

公司:[你的公司名称]
网站:[你的网站]
电话:[你的联系电话] / [你的联系电话]
地址:[你的地址]
时间:9:00-18:00(周一至周日)

发布检查清单(每次发布前必看!)

  • 已重新获取最新 token(不超过 2 小时)
  • 已使用 curl 命令(不是 Python)
  • 已指定 -H "Content-Type: application/json; charset=utf-8"
  • 已用手机扫码预览(不是 PC 预览)
  • 已确认文字正常显示(不是

    ...

    标签)

以上 5 项全部打勾后才能正式发布!

相关专题

更多
微信调黑色模式教程
微信调黑色模式教程

本专题整合了微信调黑色模式教程,阅读下面的文章了解更多详细内容。

2025.12.25

776

25

微信访客记录查看教程
微信访客记录查看教程

微信虽功能丰富,却未直接设置查看访客记录的功能,不过,仍能借助一些间接方法,来了解访客的相关情况。比如,通过朋友圈互动,查看点赞、评论者,推断访客踪迹;运营公众号的用户,可在后台统计数据中,分析访客行为。

2025.05.28

4916

10

微信怎么解除未成年认证
微信怎么解除未成年认证

若要解除微信未成年认证,您必须已满 18 周岁且认证时间已超过 30 天。具体解除步骤如下:登录微信,前往“我”页面。点击“设置”>“未成年保护”。填写真实姓名、身份证号和身份证照片。进行人脸识别。点击“解除未成年认证”,提交审核。审核通过后,解除成功,即可恢复所有微信功能。

2025.04.22

8073

12

微信对方没打电话显示忙线咋回事儿
微信对方没打电话显示忙线咋回事儿

微信显示“忙线”原因:对方正在通话;对方开启了“免打扰”模式;信号不佳;操作延迟;系统故障。

2025.03.28

3440

4

微信是谁开发的
微信是谁开发的

微信是由张小龙所带领的腾讯广州研发中心产品团队打造开发的,并不是马化腾开发的,而腾讯公司总裁马化腾是在产品策划的邮件中确定这款产品的名称叫做“微信”的。想了解更多微信相关的内容,可阅读本专题下面的相关文章。

2024.11.05

5155

8

微信角标数字怎么恢复
微信角标数字怎么恢复

恢复微信角标数字的方法:1、强制退出微信,重新启动;2、清除微信缓存;3、检查微信版本更新;4、卸载并重新安装微信。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2025.01.16

3022

7

怎么查看微信注册时间
怎么查看微信注册时间

通过以下步骤查看微信注册时间:1. 打开微信;2. 点击“我”;3. 点击“设置”;4. 进入“账号与安全”;5. 查看“微信号”;6. 查看注册时间。想了解更多相关的内容,请阅读专题下面的文章。

2024.12.23

6200

8

微信打电话怎么不显示
微信打电话怎么不显示

微信电话不显示的原因可能是:未打开通话显示设定。运营商限制。对方设定了拒接陌生来电。技术问题。隐私保护导致来电号码隐藏,需对方主动选择显示。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.12.10

3575

6

手动删除的微信聊天记录怎么找回
手动删除的微信聊天记录怎么找回

手动删除的微信聊天记录可以通过以下方法找回:如已开启微信聊天记录备份,可通过「设置」>「聊天」>「聊天记录备份与迁移」恢复。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.12.02

1474

6

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PHP开发微信公众号平台从简到精
PHP开发微信公众号平台从简到精

共25课时 | 6.9万人学习

PHP开发微信公众号视频教程
PHP开发微信公众号视频教程

共5课时 | 1.7万人学习

PHP开发微信公众号视频教程
PHP开发微信公众号视频教程

共13课时 | 5.8万人学习