Python 调用企业微信群机器人发送消息及文件

Python 操作企业微信群机器人。

企业微信群创建机器人 :


安装 requests json :

shell 复制代码
pip install requests
pip install json

发送消息(markdown)

python 复制代码
import requests
import json

# 企业微信机器人发送文字
def send_markdown (message, wx_url):
    # wx_url = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxxxx'
    data = {"msgtype": "markdown", "markdown": {"content": message}}

    r = requests.post(url=wx_url,
                      data=json.dumps(data))  # url中的xxx是你的机器人webhook对应片段,不要轻易泄露出去否则任何人都可以控制你的机器人
    print(r.text)
    print(r.status_code)


send_message(wx_url='xxx',message='xxxx')

发送文件及消息

python 复制代码
import requests
import json

#发送文件
def post_file(file, wx_url, id_url):
    # wx_url = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxxx'
    data = {'file': open(file, 'rb')}
    # 请求id_url(将文件上传微信临时平台),返回media_id
    #  id_url = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/upload_media?key=xxxxxx&type=file'
    response = requests.post(url=id_url, files=data) 
    print(response.text)
    json_res = response.json()
    media_id = json_res['media_id']
    data = {"msgtype": "file",
            "file": {"media_id": media_id}
            }
    # 发送文件
    result = requests.post(url=wx_url, json=data)
    return (result)


# 发送文字
def send_message(message, person_list, wx_url):
    # wx_url = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxxx&type'
    data = {
        "msgtype": "text",
        "text": {
            "content": message,
            "mentioned_list": person_list  # 需@人的姓名

        }
    }
    r = requests.post(url=wx_url,
                      json=data)  # url中的xxx是你的机器人webhook对应片段,不要轻易泄露出去否则任何人都可以控制你的机器人



#发送文件 发送 send?   上传文件 upload_media?  type=file
wx_url = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxxx'
id_url = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/upload_media?key=xxxxxxx&type=file'
post_file('/zscript/serverpi/zserverpireport/xxx.html',wx_url=wx_url,id_url=id_url)


#发送文字
wx_url = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxx&type'
send_message(message='今日巡检报告已生成,请注意查收',person_list='@all',wx_url=wx_url)

企业微信机器人

当前自定义机器人支持文本(text)、markdown(markdown)、图片(image)、图文(news)四种消息类型。

机器人的text/markdown类型消息支持在content中使用<@userid>扩展语法来@群成员

更多内容可参照企业微信官方帮助文档 https://open.work.weixin.qq.com/help2/pc/14931

也可单机群机器人webhook地址查看详细配置说明

相关推荐
Sandman6z1 小时前
uv python 卸载
开发语言·python·uv
三道杠卷胡1 小时前
【AI News | 20250521】每日AI进展
人工智能·python·计算机视觉·语言模型·aigc
Chocolate_men2 小时前
ftp、http下载远程文件(多线程、断点续传)
python·网络协议·http
测试19983 小时前
Selenium无法定位元素的几种解决方案详解
自动化测试·软件测试·python·selenium·测试工具·职场和发展·测试用例
花菜会噎住4 小时前
Python 计算机网络TCP网络应用程序开发
网络·python·tcp/ip·计算机网络·客户端·服务端
牛马的人生4 小时前
使用亮数据代理IP+Python爬虫批量爬取招聘信息训练面试类AI智能体(手把手教学版)
爬虫·python·tcp/ip·其他
leo_hush4 小时前
python查询elasticsearch 获取指定字段的值的list
python·elasticsearch
红衣小蛇妖5 小时前
Python基础学习-Day30
开发语言·python·学习
CodeCraft Studio5 小时前
PDF处理控件Aspose.PDF教程:以编程方式将 PDF 导出为 JPG
java·python·pdf·.net
于归pro5 小时前
Python环境管理工具深度指南:pip、Poetry、uv、Conda
python·pip·uv