koraiHub

md2WeChat-python

办公效率v2.0.0
作者:koraiHub更新于 2026-05-11共 4 个版本 · 最新版本发布于 2026-03-12md2wechat-skill@clawhub_koraihub/md2wechat-skill
文档处理流程自动化#微信

据 AlphaMoat 统计,截至 2026-09,md2WeChat-python 累计下载 2,068 次、获 3 个星标,在全部 5,078 个 AI 技能中排名第 4,380 位,在「办公效率」分类(435 个)中排名第 336 位。

累计安装
303
累计下载
2,068
星标
3
全站排名
#4,380
全站前 87% · 「办公效率」前 78%
平台累计安装累计下载星标评论
ClawHub ↗361,2991-
SkillHub ↗3032,0683—

各平台的计数口径不同,统计时间不一致。

这个技能是做什么的

仅转换模式无需微信凭据,可写本地预览。草稿模式需授权应用凭据,会上传正文、图片和封面素材。上传前检查可信 Markdown,将图片路径限制在文章目录,并审查预览及可能截断。

资料发布于 2026-10-27

可以用来做什么

  • 准备微信草稿预览

什么时候用

  • Markdown 需要微信排版时

示例提示词

以下是根据技能文档生成的示例,不代表实际运行结果。

先本地转换,授权草稿上传前审查图片路径。

月度数据趋势

累计下载2,068
7211,4452,1682026-03 · 累计下载 8212026-05 · 累计下载 1,1892026-06 · 累计下载 1,3152026-07 · 累计下载 1,5032026-08 · 累计下载 1,6412026-09 · 累计下载 2,06826-0326-09
星标3
1232026-03 · 星标 12026-05 · 星标 32026-06 · 星标 32026-07 · 星标 32026-08 · 星标 32026-09 · 星标 326-0326-09

2026-09 起统计方法调整:同名技能按作者分别统计,并覆盖全部技能。图中虚线为调整前的月份,与之后的数据不直接比较,也不计算跨越调整的增长。

月份累计下载环比星标
2026-092,068—3
2026-081,641+9.2%3
2026-071,503+14.3%3
2026-061,315+10.6%3
2026-051,189—3
2026-03821—1

SKILL.md 原文

以下是作者发布的原始文件,按纯文本显示,本站未做修改或审核;其中的链接不可点击,命令请核实后再运行。抓取于 2026-10-23。

4.8 KB · ClawHub v2.0.0
---
name: md2wechat-skill
version: 1.0.2
description: 将 Markdown 文件转换为微信公众号兼容的内联样式 HTML,并一键发送到微信草稿箱。支持 Front Matter 元数据、表格、代码块、列表、图片自动上传等完整排版能力。
metadata:
  openclaw:
    primaryEnv: WECHAT_APPID
    requires:
      bins:
        - python3
展开全部(共 173 行)
      env:
        - WECHAT_APPID
        - WECHAT_SECRET
    permissions:
      declared_purpose: "将 Markdown 转换为微信兼容 HTML,可选上传到微信公众号草稿箱。写操作包括:保存本地预览 HTML、生成临时封面图到系统 temp 目录"
      network: true
      filesystem: read-write
---

# md2wechat-skill — Markdown 转微信草稿箱

将 Markdown 文件经过排版引擎转换为微信图文编辑器兼容的内联样式 HTML,并通过微信公众号 API 发送到草稿箱。

## 核心能力

- **Markdown → 微信 HTML**:完整解析标准 Markdown 语法(标题、列表、表格、代码块、引用等),自动转换为微信兼容的内联样式
- **Front Matter 元数据**:支持 YAML Front Matter 定义标题、作者、摘要、发布模式等
- **图片自动处理**:正文内嵌的本地图片自动上传到微信 CDN 并替换为永久链接
- **封面图上传**:支持指定封面图上传为微信永久素材
- **代码块深色主题**:代码块自动适配深色背景样式
- **超长内容截断**:超过微信 2MB 限制的内容自动安全截断

## 前置条件

### 依赖安装

```bash
pip install wechatpy markdown beautifulsoup4 requests python-dotenv pillow
```

### 微信公众号配置(仅草稿箱发布需要)

需要设置以下环境变量(可通过 .env 文件或系统环境变量):

```
WECHAT_APPID=你的公众号AppID
WECHAT_SECRET=你的公众号AppSecret
```

获取方式:登录 [微信公众平台](https://mp.weixin.qq.com/) →「开发」→「基本配置」→ 获取 AppID 和 AppSecret。

配置模板见 `{baseDir}/resources/env_template.txt`。

> **提示**:如果仅需要将 Markdown 转换为微信兼容 HTML(`--convert-only` 模式),则不需要配置微信密钥。

## 使用方式

### 模式一:仅转换 HTML(无需微信密钥)

将 Markdown 文件转换为微信兼容的内联样式 HTML,输出到本地文件:

```bash
python {baseDir}/scripts/md2wechat.py <markdown文件路径> --convert-only --output <输出HTML路径>
```

示例:

```bash
python {baseDir}/scripts/md2wechat.py ./article.md --convert-only --output ./preview.html
```

### 模式二:转换并上传到微信草稿箱

```bash
python {baseDir}/scripts/md2wechat.py <markdown文件路径> --draft --env-file <.env路径>
```

支持的可选参数:
- `--title "自定义标题"`:覆盖自动提取的标题
- `--author "作者名"`:指定作者
- `--cover ./cover.png`:指定封面图
- `--output ./preview_dir/`:同时保存本地预览 HTML
- `--env-file .env`:指定环境变量配置文件

完整示例:

```bash
python {baseDir}/scripts/md2wechat.py ./my_article.md --draft \
    --title "我的文章标题" \
    --cover ./images/cover.png \
    --env-file ./.env \
    --output ./preview/
```

### 查看帮助

```bash
python {baseDir}/scripts/md2wechat.py --help
```

## Markdown 文件格式

### 基本格式

标准的 GitHub Flavored Markdown 语法均受支持:

```markdown
# 文章标题

正文段落...

## 二级标题

- 无序列表项
- 列表项

1. 有序列表项
2. 列表项

> 引用文本

**加粗** 和 *斜体*

| 表头1 | 表头2 |
|-------|-------|
| 单元格 | 单元格 |
```

### Front Matter 元数据(可选)

在文件最顶部添加 YAML 格式的元数据块:

```markdown
---
title: 自定义标题
author: 作者名
summary: 文章摘要描述
publish_mode: draft
---

正文内容...
```

支持的字段:`title`、`author`、`summary`、`cover`、`publish_at`、`publish_mode`、`account_id`

### 图片引用

使用相对路径引用图片,上传草稿时会自动处理:

```markdown
![图片描述](images/photo.png)
```

## 示例文件

示例 Markdown 文章:`{baseDir}/examples/sample_article.md`

## 脚本文件说明

| 文件 | 说明 |
|------|------|
| `scripts/md2wechat.py` | 主入口脚本(CLI) |
| `scripts/md_converter.py` | Markdown → 微信 HTML 转换引擎 |
| `scripts/html_formatter.py` | HTML 内联样式适配器 |
| `scripts/wechat_client.py` | 微信公众号 API 客户端 |

## Rules

1. 在执行 `--draft` 模式前,必须确认用户已正确配置 `WECHAT_APPID` 和 `WECHAT_SECRET`
2. 如果用户只需要转换 HTML 而不需要上传,应使用 `--convert-only` 模式
3. 所有脚本的工作目录应在 `{baseDir}/scripts/` 下执行,以确保模块导入正确
4. 转换生成的 HTML 使用内联样式,不依赖外部 CSS 文件,确保微信兼容性

「办公效率」分类下的热门技能

数据月份:2026-09 · 下载/星标/安装数聚合自公开技能注册库(ClawHub、SkillHub),按月更新。口径说明见数据方法。