乐于分享
好东西不私藏

OpenClaw 社交媒体自动发布系统:一篇文章分发 7 个平台

OpenClaw 社交媒体自动发布系统:一篇文章分发 7 个平台

前言

作为内容创作者,最繁琐的工作之一就是在多个平台重复发布相同的内容:微博、小红书、知乎、公众号、B站、抖音、快手……每个平台都要手动复制粘贴,调整格式,上传配图,简直是在浪费生命。

今天教你用 OpenClaw 搭建一套自动发布系统,一次输入,自动分发到 7 个主流平台,节省 90% 的重复劳动。


前置准备

1. 安装 OpenClaw

OpenClaw 是一个开源的个人自动化平台,可以通过对话式 AI 控制各种应用和服务。

安装方式:

# macOS (Homebrew)

brew install openclaw/tap/openclaw

# Linux/Docker

docker pull ghcr.io/openclaw/openclaw:latest

# 启动服务

openclaw gateway start

安装完成后:

  • 访问 http://localhost:3000 进入 Web 界面
  • 使用手机号或邮箱注册账号
  • 下载配套 App(iOS/Android)完成配对

2. 准备平台账号

确保你已经注册了以下平台账号(根据需要选择):

文字类平台:

  • 微信公众号
  • 知乎
  • 微博
  • 小红书

视频类平台:

  • B站
  • 抖音
  • 快手
💡 提示: 首次配置时需要在各平台获取授权凭证(App Key/Secret),之后就可以自动使用了。

实战步骤

第一步:配置多平台发布技能

OpenClaw 提供了 message 工具,支持 7+ 个主流平台的自动发布。我们需要先配置各平台的 API 凭证。

1. 微信公众号配置

登录微信公众平台,获取以下信息:

  • AppID
  • AppSecret

在 OpenClaw 配置文件中添加:

# ~/.openclaw/workspace/.env

WECHAT_APP_ID=wx11f8ea8984f3115d

WECHAT_APP_SECRET=your_app_secret_here

2. 知乎配置

知乎需要 OAuth 授权,使用 OpenClaw 的知乎技能完成授权:

cd ~/.openclaw/extensions/zhihu

npm run auth

按提示完成浏览器授权。

3. 微博、小红书等平台

类似地,各平台都需要完成 OAuth 授权或 API Key 配置。OpenClaw 的文档中有详细的配置说明。

第二步:创建发布脚本

创建一个统一的文章模板和发布脚本:

文件: scripts/publish-everywhere.sh

#!/bin/bash

# 读取文章内容

ARTICLE_FILE="$1"

TITLE=$(grep "^# " "$ARTICLE_FILE" | head -1 | sed 's/^# //')

CONTENT=$(cat "$ARTICLE_FILE")

# 提取封面图(第一张图片)

COVER_IMAGE=$(grep -oP '!\[.*?\]\(\K[^\)]+' "$ARTICLE_FILE" | head -1)

# 发布到微信公众号

echo "📝 发布到微信公众号..."

node ~/.openclaw/workspace/skills/wechat-publisher/scripts/publish.mjs \

  --title "$TITLE" \

  --content "$CONTENT" \

  --author "你的名字" \

  --cover "$COVER_IMAGE"

# 发布到知乎

echo "📝 发布到知乎..."

message --channel zhihu \

  --action publish-article \

  --title "$TITLE" \

  --content "$CONTENT" \

  --cover "$COVER_IMAGE"

# 发布到微博

echo "📝 发布到微博..."

# 微博字数限制,需要截取摘要

SUMMARY=$(echo "$CONTENT" | head -20 | tr '\n' ' ')

message --channel weibo \

  --action send \

  --message "$TITLE

$SUMMARY

全文链接:https://your-blog.com/article-url"

# 发布到小红书

echo "📝 发布到小红书..."

message --channel xiaohongshu \

  --action publish-note \

  --title "$TITLE" \

  --content "$CONTENT" \

  --images "$COVER_IMAGE"

echo "✅ 发布完成!"

赋予执行权限:

chmod +x scripts/publish-everywhere.sh

第三步:使用 AI 自动适配各平台格式

不同平台有不同的格式要求,我们可以让 AI 自动适配:

文件: scripts/adapt-for-platform.py

import sys

import json

# 读取文章内容

with open(sys.argv[1], 'r') as f:

    content = f.read()

# 提取标题和正文

lines = content.split('\n')

title = lines[0].replace('# ', '')

body = '\n'.join(lines[2:])

# 为不同平台生成适配版本

platforms = {

    'weibo': {

        'max_length': 2000,

        'needs_summary': True,

        'format': 'title + summary + link'

    },

    'xiaohongshu': {

        'max_length': 1000,

        'emoji_friendly': True,

        'format': 'emoji-rich, paragraph-based'

    },

    'zhihu': {

        'markdown': True,

        'code_blocks': True,

        'format': 'standard article'

    }

}

# 使用 OpenClaw 的 AI 适配

for platform, rules in platforms.items():

    adapted = adapt_content(content, rules)

    with open(f'{sys.argv[1]}.{platform}', 'w') as f:

        f.write(adapted)

def adapt_content(content, rules):

    """根据平台规则适配内容"""

    # 这里可以调用 OpenClaw 的 AI 接口

    # 简化版:截断长度、添加 emoji 等

    adapted = content

    if rules.get('needs_summary'):

        # 生成摘要

        adapted = generate_summary(adapted)

    if rules.get('max_length'):

        # 截断到最大长度

        adapted = adapted[:rules['max_length']]

    return adapted

第四步:设置定时自动发布

假设你习惯每天早上 8 点发布新内容:

配置定时任务:

# 编辑 crontab

crontab -e

添加定时任务:

0 8 * * * cd /Users/yourname/.openclaw/workspace && bash scripts/publish-everywhere.sh generated-articles/$(date +\%Y-\%m-\%d).md

这样每天早上 8 点,OpenClaw 会自动查找当天日期的文章,并分发到所有配置的平台。

第五步:监控发布状态

创建一个监控脚本,跟踪各平台的发布结果:

文件: scripts/check-publishing-status.sh

#!/bin/bash

LOG_FILE="publishing-logs/$(date +%Y-%m-%d).log"

echo "=== 发布状态报告 $(date) ===" | tee -a "$LOG_FILE"

# 检查微信公众号发布状态

echo "📊 微信公众号:" | tee -a "$LOG_FILE"

# 调用微信 API 查询最新文章状态

# 检查知乎发布状态

echo "📊 知乎:" | tee -a "$LOG_FILE"

# 查询知乎最新文章

# 统计各平台阅读量

echo "📈 阅读量统计:" | tee -a "$LOG_FILE"

# 收集各平台数据

echo "✅ 检查完成" | tee -a "$LOG_FILE"

# 发送报告到飞书

message --channel feishu \

  --target "your_user_id" \

  --filePath "$LOG_FILE"


效果展示

配置完成后,你的工作流程会变成这样:

传统方式(耗时 60+ 分钟):

  1. 打开微信公众号后台
  2. 复制文章,调整格式,上传图片
  3. 打开知乎,重复相同操作
  4. 打开微博,截取摘要,发布
  5. 打开小红书,调整格式为 emoji 风格
  6. ...继续其他平台

使用 OpenClaw(耗时 1 分钟):

bash scripts/publish-everywhere.sh generated-articles/today-article.md

然后你可以去喝杯咖啡,OpenClaw 会自动:

  • ✅ 发布到微信公众号(自动上传图片)
  • ✅ 发布到知乎(保留 Markdown 格式)
  • ✅ 发布到微博(自动截取摘要)
  • ✅ 发布到小红书(自动添加 emoji)
  • ✅ 发布到其他平台
  • ✅ 发送发布报告到你的飞书

效率提升: 60分钟 → 1分钟(60倍


常见问题

Q1:某些平台需要验证码怎么办?

OpenClaw 的浏览器自动化技能可以处理验证码:

# 首次发布时,会弹出浏览器窗口

# 手动完成验证后,OpenClaw 会记住会话

# 之后就可以自动发布了

Q2:不同平台的图片要求不一样怎么办?

使用 AI 自动调整图片尺寸:

# scripts/resize-images.py

from PIL import Image

def resize_for_platform(image_path, platform):

    img = Image.open(image_path)

    sizes = {

        'wechat': (900, 500),  # 公众号封面比例

        'xiaohongshu': (1080, 1080),  # 小红书 1:1

        'weibo': (900, 500),  # 微博

        'zhihu': (1200, 675)  # 知乎

    }

    if platform in sizes:

        img.resize(sizes[platform]).save(f'{image_path}.{platform}')

Q3:如何处理各平台的审核机制?

OpenClaw 支持敏感词过滤和内容审核:

# ~/.openclaw/workspace/content-rules.yaml

blocklist:

  - 广法

  - 加微信

  - 代购

platform_rules:

  weibo:

    max_links: 1

    no_external_links: true

  xiaohongshu:

    no_qr_codes: true

    max_emoji: 20

发布前会自动检查并提示风险内容。


进阶技巧

1. 自动生成不同平台的标题

同一个内容,在不同平台使用不同的标题效果更好:

文件: scripts/generate-titles.py

import openai

def generate_titles(original_title):

    response = openai.ChatCompletion.create(

        model="gpt-4",

        messages=[{

            "role": "user",

            "content": f"""为以下文章标题生成 4 个不同平台的变体:

原标题:{original_title}

要求:

- 微博:15字内,吸引眼球,可适当夸张

- 小红书:20字内,emoji丰富,突出"干货"

- 知乎:25字内,专业严谨,带疑问

- 微信公众号:30字内,完整表达,可分主副标题

返回 JSON 格式。"""

        }]

    )

    return json.loads(response.choices[0].message.content)

# 使用

titles = generate_titles("OpenClaw 社交媒体自动发布系统")

# 输出:

# {

#   "weibo": "一键发7平台!这工具太强了",

#   "xiaohongshu": "🔥 内容创作者必看!一键分发7大平台",

#   "zhihu": "如何用自动化工具实现多平台内容分发?",

#   "wechat": "OpenClaw 社交媒体自动发布系统:一篇文章分发 7 个平台"

# }

2. 数据收集与分析

自动收集各平台的阅读、点赞、评论数据:

文件: scripts/collect-metrics.py

import requests

import json

def collect_metrics(article_url):

    metrics = {}

    # 微信公众号阅读量(需要登录后台)

    metrics['wechat'] = get_wechat_reads(article_url)

    # 知乎点赞和评论数

    metrics['zhihu'] = get_zhihu_stats(article_url)

    # 微博转发和点赞

    metrics['weibo'] = get_weibo_engagement(article_url)

    # 保存到数据库或发送到飞书

    message --channel feishu \

      --message "📊 数据报告:\n${json.dumps(metrics, indent=2)}"

    return metrics

# 定时收集数据(每天晚上10点)

# 0 22 * * * python3 scripts/collect-metrics.py

3. 智能发布时间优化

不同平台的最佳发布时间不同:

文件: scripts/optimize-timing.py

import json

best_times = {

    'wechat': '08:00',      # 早晨通勤

    'weibo': '12:00',       # 午休时间

    'zhihu': '21:00',       # 晚间深度阅读

    'xiaohongshu': '22:00', # 睡前刷手机

    'bilibili': '18:00'     # 下班后

}

def schedule_publish(article_file, platforms):

    for platform in platforms:

        time = best_times.get(platform, '09:00')

        # 使用 OpenClaw 的 cron 功能

        # 每个平台在不同时间发布

        print(f"{platform}: {time}")


总结

通过 OpenClaw 搭建社交媒体自动发布系统,你可以:

节省时间:从 60 分钟缩短到 1 分钟
提高覆盖:一次输入,分发 7+ 个平台
保证质量:AI 自动适配各平台格式
数据驱动:自动收集和分析各平台数据
灵活扩展:轻松添加新平台支持

这套系统的核心价值:

  • 把你从重复劳动中解放出来
  • 专注于内容创作,而不是复制粘贴
  • 建立属于自己的内容分发网络

扩展阅读

  • OpenClaw 官方文档
  • 微信公众号 API 文档
  • 知乎开放平台
  • OpenClaw GitHub 仓库

_如果你觉得这篇文章对你有帮助,欢迎点赞、收藏、转发!_


🎁 关注我,回复「token福利」,领取限时 token!
— END —
🦐 龙虾 · OpenClaw 技术分享