使用Python向企业微信群发送消息的代码示例

学习笔记作者:admin日期:2025-09-04点击:38

摘要:本文介绍了如何使用Python向企业微信群机器人发送消息,包括发送文本、Markdown和图文消息的代码示例,并提供了注意事项和封装函数的方法。

使用Python向企业微信群发送消息的代码示例

      你可以使用 Python 的 requests 库向企业微信群机器人发送消息。下面是一个完整的示例代码,用于发送文本消息到企业微信群。

前提准备:

  • 确保你已经创建了企业微信群机器人,并获取了 webhook 的 key
  • 安装 requests 库(如果没有安装):
pip install requests

Python 发送消息代码示例:

import requests
import json

# 替换为你的 webhook URL 中的 key
webhook_url = "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=***"

# 要发送的消息内容
message = {
    "msgtype": "text",
    "text": {
        "content": "Hello,这是一条来自 Python 的测试消息!",
        "mentioned_list": ["@all"]  # 可选:@所有人;也可以指定用户ID列表,如 ["zhangsan", "lisi"]
    }
}

# 发送 POST 请求
headers = {
    "Content-Type": "application/json"
}

response = requests.post(webhook_url, data=json.dumps(message), headers=headers)

# 检查响应
if response.status_code == 200:
    result = response.json()
    if result.get("errcode") == 0:
        print("消息发送成功!")
    else:
        print(f"消息发送失败:{result.get('errmsg')}")
else:
    print(f"HTTP 请求失败,状态码:{response.status_code}")

支持的消息类型(可选扩展)

      除了文本消息,你还可以发送其他类型,例如 Markdown、图文等。

示例:发送 Markdown 消息

message = {
    "msgtype": "markdown",
    "markdown": {
        "content": """
## 这是一条 Markdown 消息
- 项目一:已完成
- 项目二:进行中
> 提醒:请按时提交报告!
"""
    }
}

示例:发送图文消息(news)

message = {
    "msgtype": "news",
    "news": {
        "articles": [
            {
                "title": "腾讯文档",
                "description": "高效的在线协作文档",
                "url": "https://docs.qq.com",
                "picurl": "https://example.com/image.png"
            }
        ]
    }
}

注意事项:

  • key 是敏感信息,请勿泄露或提交到公共代码仓库。
  • 每个机器人每天最多发送 1000 条消息。
  • @all 可以提醒所有人,但需群成员少于 1000 人。

封装成函数:

def send_wechat_message(content):
    message = {
        "msgtype": "text",
        "text": {
            "content": content,
            "mentioned_list": ["@all"]
        }
    }
    response = requests.post(webhook_url, json=message, headers={"Content-Type": "application/json"})
    if response.json().get("errcode") == 0:
        print("发送成功")
    else:
        print("发送失败")

      然后调用:

send_wechat_message("服务器运行正常 ✅")

      如有更多需求(如定时发送、日志记录等),可进一步扩展。

上一篇      下一篇