自动化测试企业微信推送:群机器人(三)

前言:此文章主要讲解python通过群机器人发送文件

前置条件:群机器人已创建

代码逻辑:

1、通过企业微信的API文档,获取文件上传的media_id

2、获取到ID之后,发送群消息

代码:

python 复制代码
import os
import time
import requests
import json



def send_file_to_wechat_group(file_path):
    """
    通过企业微信群机器人发送文件
    :param webhook_url: 企业微信群机器人的 webhook URL
    :param file_path: 要发送的文件路径
    """
    url = "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=ae34a1b6-0d57-4468-990c-24b238344cc5"
    upload_url = "https://qyapi.weixin.qq.com/cgi-bin/webhook/upload_media?key=ae34a1b6-0d57-4468-990c-24b238344cc5&type=file"
    with open(file_path, 'rb') as file:
        response = requests.post(upload_url, files={'file': file}, timeout=10)
        media_id =response.json().get('media_id')           # 获取上传文件的media_id
        data = {
            "msgtype": "file",
            "file": {
                "media_id": media_id
            }
        }
    result = requests.post(url, json=data, timeout=10)       # 发送文件
    print(result.text)
    if "ok"==result.json().get('errmsg'):
        print("文件发送成功")
    else:
        print("文件发送失败")



# 示例调用
if __name__ == '__main__':
    file_path = r'D:\python_project\performance\repoet\test1.txt'
    send_file_to_wechat_group(file_path)

验证结果:

相关推荐
消失的旧时光-19435 小时前
第 5 篇:Android 与机器人主控之间,指令、回执、超时和重试怎么设计?
机器人·tcp通信·ack·sequence
别动我齐刘海8 小时前
机器学习基础2——C++、OpenCV、点云、Open3D
c++·人工智能·opencv·机器学习·计算机视觉·机器人·ros2
梦想的旅途29 小时前
企业微信API实战:外部群定时群发与SOP自动推送指南
企业微信
消失的旧时光-194310 小时前
第 4 篇:TCP 字节流中的粘包、半包与机器人协议解析
机器人·tcp·通信协议·半包·粘包
某林21210 小时前
从“仿真能跑”到“真机能走”:一套轮腿机械狗强化学习系统的工程化实践
人工智能·stm32·嵌入式硬件·架构·机器人·机械狗
消失的旧时光-194312 小时前
补充篇:机器人为什么都需要“指令中心”?——从服务机器人到割草机器人
机器人·割草机·commandcenter
热心市民R先生12 小时前
如何在CSDN博客编辑器中导入自己的Markdown文件
机器人
M-Robots echo12 小时前
王成录:M-Robots 积木式架构,解决机器人软硬件重复开发难题
机器人·开源鸿蒙·开源社区·m-robots·王成录
梦想的旅途212 小时前
企业微信自动化实战:客户资料自动修改与备注同步
运维·自动化·企业微信
梦想的旅途213 小时前
企业微信自动化实战:客户通讯录备份与关系自动迁移
运维·自动化·企业微信