使用Python发送企业微信消息

        大家好,在本文中,我们将探讨如何使用 Python 发送企业微信消息。将详细说明如何通过 Python 脚本实现消息的发送。无论是希望自动化某些任务,还是想要快速地向团队发送实时通知,本文都将为您提供一站式的解决方案。

        企业微信提供了丰富的API和SDK,其中包括Webhook机器人接口,可以通过HTTP请求发送消息。以下是使用Python发送消息到企业微信的步骤:

  • 在企业微信后台创建一个机器人,并获取到Webhook Key,入口如下。
  • 使用Python的requests库发送HTTP POST请求到Webhook URL,包含消息内容和其他必要参数。
  • 接收企业微信返回的响应,可以根据需要进行处理或打印。

1、文本消息

下面是一个发送文本消息的示例代码:

import requestsdef send_wechat_message(message):url = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=YOUR_WEBHOOK_KEY'payload = {'msgtype': 'text','text': {'content': message}}response = requests.post(url, json=payload)return response.json()message = '这是一条来自Python的企业微信消息'
response = send_wechat_message(message)
print(response)

请将 YOUR_WEBHOOK_KEY 替换为你在企业微信后台创建机器人时获取到的Webhook Key。

效果:

 

2、Markdown消息

        Markdown消息可以使用Markdown语法对文本进行格式化,包括标题、链接、列表等。你可以在消息中使用Markdown标记符号来实现不同的格式效果。

示例:

import requestsdef send_markdown_message(content):url = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=YOUR_WEBHOOK_KEY'payload = {'msgtype': 'markdown','markdown': {'content': content}}response = requests.post(url, json=payload)return response.json()content = """
# 标题
这是一条使用Markdown格式的企业微信消息。- 列表项1
- 列表项2[链接文字](https://example.com)
"""
response = send_markdown_message(content)
print(response)

请将 YOUR_WEBHOOK_KEY 替换为你在企业微信后台创建机器人时获取到的Webhook Key。

效果:

3、图片消息

图片消息可以用于发送图片,需要提供图片的URL。

示例:

import requests
import base64
import hashlibimage_file_path = "./images/img.png"# 1、图片base64码:提供给企业微信发送图片信息所需
with open(image_file_path, "rb") as f:base64_data = base64.b64encode(f.read()).decode()
print(base64_data)# 2、图片的md5值
file = open(image_file_path, "rb")
md = hashlib.md5()
md.update(file.read())
res1 = md.hexdigest()
print(res1)def send_image_message():url = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=YOUR_WEBHOOK_KEY'payload = {'msgtype': 'image','image': {"base64": base64_data,"md5": res1}}response = requests.post(url, json=payload)return response.json()response = send_image_message()
print(response)

        请将 YOUR_WEBHOOK_KEY 替换为你在企业微信后台创建机器人时获取到的Webhook Key,并将 https://example.com/image.jpg 替换为实际的图片URL。

效果:

4、文件消息

文件消息可以发送文件,需要提供文件的URL。

示例:

# -*- coding:utf-8-*
import requests# 类型:voice,file
file_type = "file"
file_path = "./images/img.png"
webhookkey = "YOUR_WEBHOOK_KEY"# 1.上传临时素材
def get_media_id(path):url = f"https://qyapi.weixin.qq.com/cgi-bin/webhook/upload_media?key={webhookkey}&type={file_type}"data = {file_type:open(path,"rb")}response = requests.post(url=url,files=data)print(response.json())return response.json()["media_id"]# get_media_id(file_path)# 2.推送消息
def send_message():url = f"https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key={webhookkey}"headers = {"Content-Type":"application/x-www-form-urlencoded"}params = {"msgtype": "file","file": {"media_id": get_media_id(file_path)}
}response = requests.post(url=url,headers=headers,json=params)print(response.json())return response.json()send_message()

        请将 YOUR_WEBHOOK_KEY 替换为你在企业微信后台创建机器人时获取到的Webhook Key,并将 https://example.com/file.docx 替换为实际的文件URL。

效果:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/20454.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

找不到msvcr100.dll如何修复,分享几种有效的修复方法

在计算机使用过程中,我们经常会遇到一些错误提示,其中之一就是“找不到msvcr100.dll”。这个错误通常发生在运行某些程序时,系统无法找到所需的动态链接库文件。这个问题可能会给用户带来困扰,但是幸运的是,有一些简单…

面试网易大模型算法岗,题是一道比一道难啊。。。

暑期实习基本结束了,校招即将开启。 不同以往的是,当前职场环境已不再是那个双向奔赴时代了。求职者在变多,HC 在变少,岗位要求还更高了。提前准备才是完全之策。 最近,我们又陆续整理了很多大厂的面试题&#xff0c…

汇编原理 | 二进制、跳转指令、算数运算、

一.二进制 two complement reprentation(补码) 二进制的运算: 6的二进制 0110 -6的二进制 如何表示? 四个bit的第一个bit表示符号:1负0正 -6表示为1010 解释: 0 0000 1 0001 -1 1111(由 …

49、Floyd求最短路

Floyd求最短路 题目描述 给定一个n个点m条边的有向图,图中可能存在重边和自环,边权可能为负数。 再给定k个询问,每个询问包含两个整数x和y,表示查询从点x到点y的最短距离,如果路径不存在,则输出“imposs…

RestTemplate中multipart form data传多个参数的处理办法

应用场景 前端请求后端上传单个或多个文件,同时携带其他参数,后端再转发到第三方服务。 思路 拿到前端提交的multipart参数读取参数并区分文件/其他参数请求第三方 实现 拿到前端提交的参数并解析到MultiValueMap: private static Mult…

【Ubuntu】100 系统字体安装和更改

系统:Ubuntu18.04LTS 1 Why we need? 写这篇经验贴的原因: ①我需要装一下中文字体(Qt要用); ②想调一下字体大小和默认中文字体的样式 2 装第三方字体 Step1:安装软件Font Manager sudo ap…

【记录】打印|用浏览器生成证件照打印PDF,打印在任意尺寸的纸上(简单无损!)

以前我打印证件照的时候,我总是在网上找在线证件照转换或者别的什么。但是我今天突然就琢磨了一下,用 PDF 打印应该也可以直接打印出来,然后就琢磨出来了,这么一条路大家可以参考一下。我觉得比在线转换成一张 a4 纸要方便的多&am…

Echarts 让柱状图在图表中展示,离开X轴

文章目录 需求分析需求 分析 话不多说,直接源码展示 option = {title: {text: Waterfall Chart,subtext: Li

落地台灯有什么作用?五款口碑好的落地台灯推荐

落地台灯有什么作用?面对长时间工作、学习已成为当代年轻人的真实写照,据目前不完全统计,60%以上的人群每天用眼时间都已经超过10小时,高强度的的用眼以及不可确定的环境因素都易导致双眼出现干涉、酸痛、红血丝等情况&#xff0c…

请简述Vue更新数组时触发视图更新的方法?

在Vue中,当你直接修改数组(如使用索引直接设置一个项或者使用length属性修改数组长度)时,Vue不能检测到这些变化,因此不会触发视图的更新。为了解决这个问题,Vue提供了一些方法来修改数组以触发视图的更新。…

[有监督学习]6.详细图解朴素贝叶斯

朴素贝叶斯 朴素贝叶斯(Naive Bayes)是常用于自然语言分类问题的算法。它在垃圾邮件过滤上的应用非常有名。 概述 朴素贝叶斯是一个基于概率进行预测的算法,在实践中被用于分类问题。具体来说,就是计算数据为某个标签的概率&…

从零开始利用MATLAB进行FPGA设计(七)用ADC采集信号教程2

黑金的教程做的实在太拉闸了,于是自己摸索信号采集模块的使用方法。 ADC模块:AN9238 FPGA开发板:AX7020;Xilinx 公司的 Zynq7000 系列的芯片XC7Z020-2CLG400I,400引脚 FBGA 封装。 往期回顾: 从零开始利…

STM32学习问题总结(2)—CubeMX生成项目后串口没效果和Microlib

检查完所有的硬件和软件部分,最后发现,又是Keil的设置问题,啊啊啊啊 打开Keil的魔术棒,勾选Target的Use Microlib选项即可,但这并不是最佳方案 最终解决方案: 参考:http://t.csdnimg.cn/2Tjfc…

PLC坐标系统怎么编程:深入解析与实战应用

PLC坐标系统怎么编程:深入解析与实战应用 在工业自动化领域,可编程逻辑控制器(PLC)扮演着至关重要的角色。而PLC坐标系统作为其核心组成部分,对于实现精确控制和高效运行具有至关重要的作用。本文将从四个方面、五个方…

代码随想录算法训练营第四十六天| 完全背包、518. 零钱兑换 II、377. 组合总和 Ⅳ

完全背包 题目链接:完全背包 文档讲解:代码随想录/完全背包 视频讲解:视频讲解-完全背包 状态:已完成(1遍) 解题过程 这几天属实是有点分身乏术了,先直接看题解AC了,二刷的时候再…

服务器主板电池

一、什么是服务器纽扣电池? 服务器纽扣电池,也叫CMOS电池,是一种非常小型的电池,通常与服务器主板上的CMOS芯片相结合,用于储存BIOS设置、时钟和其他关键系统信息。这种电池的体积通常比一枚硬币还小,而且…

四、.Net8对接Ollama实现文字翻译(.Net8+SemanticKernel+Ollama)本地运行自己的大模型

.Net8SemanticKernelOllama 一、Semantic Kernel官方定义SK能做什么? 二、基本使用1、普通对话2、使用插件实现文本翻译功能 三、IChatCompletionService、ITextGenerationService、ITextEmbeddingGenerationService 很多情况都有这样的需求,使用自有系统…

巨细巨细的白痴级vulntarget-a靶场wp再不会你打死我

ad一,靶场搭建 下载靶场:GitHub - crow821/vulntarget: vulntarget靶场系列 官方拓补图 ps:此处 攻击机ip192.168.87.134,win7ip1为192.168.87.144 下载完毕后直接装入虚拟机不要进去,不要进去,不要进去…

lms如何连接测试前端:全面解析与操作指南

lms如何连接测试前端:全面解析与操作指南 在软件开发的世界里,连接学习管理系统(LMS)与测试前端是一个复杂但至关重要的任务。本文将从四个方面、五个方面、六个方面和七个方面,详细解析lms如何连接测试前端&#xff…

OpenHarmony应用在DevEco Studio配置默认密钥为123456的签名如何进行一键签名,运行起来

目录 一.背景知识 二.完成自动化操作 三.在DevEco Studio中配置自动化签名 一.背景知识 首先OpenHarmony的应用需要使用OpenH