如何用代码控制个人微信:开发你的第一个微信机器人
背景
个人微信没有官方开放给第三方的业务 API。想「用代码发消息、收消息」,需要借助执行中枢:你在服务器上发 HTTP 请求,平台在已登录的微信实例上代为操作,结果以 JSON 返回。很多人把这一步叫「微信机器人」——本质上是 Webhook 收消息 + 发送接口回消息 的闭环,并不是微信里单独装一个 App。
第一个机器人不必做 AI、不必接 CRM。最小目标:别人给你发一句,你的程序能收到,并能自动回一句。跑通这条链路,后面加群管、通知、备份才有地基。
方案说明
以 Eyun 为例,最小机器人分四块:
① 控制台注册,扫码登录微信实例
② 配置 Webhook,你的服务能收到 POST
③ 收到文本消息后,业务逻辑决定回什么
④ 调 sendText 把回复发回去
首测发送建议先给「文件传输助手」(wcId 填 filehelper),消息会出现在本机微信里,不打扰客户。发送通了再配 Webhook,用另一个号给你发私聊,看服务能否收到并回复。
机器人跑在云端时,Webhook 必须是公网 HTTPS;本地开发可用内网穿透。回调接口要在几秒内返回 200,耗时逻辑放后台线程或队列,不要阻塞回调。
操作步骤
-
注册 Eyun,登录控制台,复制 API 域名和调用凭证。
-
获取登录二维码,目标微信扫码,记录实例 ID。
-
用 curl 或 Postman 调 sendText,接收方填
filehelper,确认微信里收到文字。 -
部署一个
/callback接口,在控制台填入 Webhook 地址。 -
用测试号给该微信发「hello」,服务端打印 POST Body,确认收到事件。
-
在回调里判断是文本消息后,调 sendText 回「收到:xxx」。
-
私聊跑通后,再考虑群聊(群 ID 一般带
@chatroom后缀)。
示例代码
最小 echo 机器人(Flask)
import os
import requests
from flask import Flask, request
from threading import Thread
app = Flask(__name__)
BASE = os.environ["EYUN_BASE"]
AUTH = os.environ["EYUN_AUTH"]
INSTANCE = os.environ["EYUN_INSTANCE"]
def send_text(to_id: str, content: str):
requests.post(
f"{BASE}/sendText",
json={"wId": INSTANCE, "wcId": to_id, "content": content},
headers={"Authorization": AUTH, "Content-Type": "application/json"},
timeout=15,
)
def handle(event: dict):
if event.get("messageType") != "text":
return
sender = event.get("fromWcId")
text = event.get("content", "")
send_text(sender, f"收到:{text}")
@app.post("/callback")
def callback():
event = request.get_json(force=True)
Thread(target=handle, args=(event,), daemon=True).start()
return "ok", 200
if __name__ == "__main__":
app.run(host="0.0.0.0", port=8080)
首测发送(filehelper)
curl -X POST http://你的域名/sendText \
-H "Authorization: eyJ0eXAi..." \
-H "Content-Type: application/json" \
-d '{"wId":"实例ID","wcId":"filehelper","content":"robot online"}'
注意
-
平台一般没有单独的「机器人开关」,能力来自消息收发接口的组合。
-
自己 sendText 发出去的消息,通常不会回弹 Webhook;测收消息要让外部账号发来。
-
实例掉线后收发都会异常,生产环境要监控在线状态。
-
自动回复建议在首条注明非人工,避免用户误解。
-
非官方接入需自行评估合规与用户授权,技术文章不能替代法务判断。
文档
标签建议: 微信机器人、个人微信API、Python、Webhook
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)