Skip to content

Repository files navigation

微信个人号自动投稿机器人

功能

  1. 投稿接收 — 用户发送「投稿」→ 连续发送文字/图片 →「停止接收」结束
  2. 朋友圈发布 — 自动将投稿内容发布为朋友圈(纯文字/纯图片/混合)
  3. 评论同步 — 监听朋友圈评论,格式化为「昵称:内容」后回复

快速开始

# 安装依赖
pip install -e .

# 复制配置
cp .env.example .env

# 运行(Mock 模式,无需真实微信)
python main.py

# 调试模式
python main.py --log-level DEBUG

项目结构

wechat_submission_bot/
├── main.py                  # 入口
├── config/                  # 配置
│   └── settings.py
├── wechat/                  # 微信协议抽象层
│   ├── client.py            # IWechatBot 接口 + BotFactory
│   ├── message.py           # 消息模型
│   ├── media.py             # 媒体处理
│   ├── exceptions.py        # 异常定义
│   └── mock_adapter.py      # Mock 适配器(开发用)
├── submission/              # 投稿模块
│   ├── manager.py           # 投稿状态机
│   ├── models.py            # 投稿领域模型
│   └── storage.py           # 图片存储
├── moments/                 # 朋友圈模块
│   ├── publisher.py         # 发布管理
│   └── formatter.py         # 内容格式化
├── comments/                # 评论模块
│   ├── listener.py          # 评论监听
│   └── responder.py         # 评论回复
├── database/                # 数据库
│   ├── db.py                # 连接管理
│   └── models.py            # ORM 模型
├── utils/                   # 工具
│   ├── logger.py            # 日志
│   └── file.py              # 文件操作
├── pyproject.toml
└── .env.example

架构

用户 → 微信协议 → IWechatBot (抽象) → 业务逻辑 → 数据库
                     ↑
              协议适配器层(独立封装)
              
业务代码只依赖 IWechatBot 接口,不依赖具体微信框架。

开发

pip install -e ".[dev]"
pytest

接入真实微信

实现 IWechatBot 接口并注册到 BotFactory

from wechat.client import BotFactory, IWechatBot

class IPadWechatBot(IWechatBot):
    # 实现所有抽象方法...
    pass

BotFactory.register("ipad", IPadWechatBot)

About

A WeChat submission and Moments publishing bot based on WeChatFerry.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages