【IoT新乐趣】手把手教程教你搭建企业微信推送消息的demo,文末提供可工作的python版本代码,抓紧时间轮出来耍一耍吧

本文主要是介绍【IoT新乐趣】手把手教程教你搭建企业微信推送消息的demo,文末提供可工作的python版本代码,抓紧时间轮出来耍一耍吧,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1 企业微信推送 python版

1.1 功能特点

  • 不需要安装企业微信客户端
  • 可在微信中直接收到文本消息,内容显全文

1.2 编程基础

基础的 python 语法基础即可

2 企业微信注册

2.1 注册企业

用电脑打开企业微信官网,https://work.weixin.qq.com/, 注册一个企业

2.2 获取企业ID

我的企业 –> 最下边可以看到企业ID: corpid

2.3 获取应用ID

管理企业 –> 应用管理 –> 创建应用

创建完成后可得到应用ID agentid

2.4 获取Secret

还在应用页面, 获取 Secret, 需要在企业微信客户端里接收。

这样就得到了 secret

注意: 一定要在企业微信手机客户端才能查看,这个有点不方便!!!

3 发送文本消息 python

3.1 官方API:

用到了两个API:

获取 access_token : https://work.weixin.qq.com/api/doc/90000/90135/91039
发送应用消息 :
https://work.weixin.qq.com/api/doc/90000/90135/90236

3.2 python 代码

import json
import requests# https://work.weixin.qq.com/wework_admin/frame#profile
corp_id = 'wwxxxxxxxxxxxxxxxxx'
corp_secret = 'Ghxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
agent_id = '10xxxxxx'def get_access_token(corp_id, corp_secret):resp = requests.get(f'https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid={corp_id}&corpsecret={corp_secret}')js = json.loads(resp.text)print(js)if js["errcode"] == 0:access_token = js["access_token"]expires_in = js["expires_in"]return access_token, expires_indef wechat_push_text(agent_id, access_token, message):data = {"touser": "@all","msgtype": 'text',"agentid": agent_id,"text": {"content": message},"safe": 0,"enable_id_trans": 0,"enable_duplicate_check": 0,"duplicate_check_interval": 1800}resp = requests.post(f'https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token={access_token}', json=data)js = json.loads(resp.text)print(js)if js["errcode"] == 0:return jsaccess_token, expires_in = get_access_token(corp_id, corp_secret)
wechat_push_text(agent_id=agent_id, access_token=access_token, message='wechat notify\ntest')

3.3 代码开源

感兴趣的可以到仓库看下整个工程代码:
https://github.com/shenbo/qiye-wechat-push

4 特别说明

本文转载自:https://shenbo.github.io/2021/08/03/python/wechat-push-%E4%BC%81%E4%B8%9A%E5%BE%AE%E4%BF%A1%E6%8E%A8%E9%80%81/ 版权归原作者所有,侵删!

5 效果图

在这里插入图片描述
参考文档:微信开发者中心

这篇关于【IoT新乐趣】手把手教程教你搭建企业微信推送消息的demo,文末提供可工作的python版本代码,抓紧时间轮出来耍一耍吧的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/786951

相关文章

Python+FFmpeg实现视频自动化处理的完整指南

《Python+FFmpeg实现视频自动化处理的完整指南》本文总结了一套在Python中使用subprocess.run调用FFmpeg进行视频自动化处理的解决方案,涵盖了跨平台硬件加速、中间素材处理... 目录一、 跨平台硬件加速:统一接口设计1. 核心映射逻辑2. python 实现代码二、 中间素材处

python中的flask_sqlalchemy的使用及示例详解

《python中的flask_sqlalchemy的使用及示例详解》文章主要介绍了在使用SQLAlchemy创建模型实例时,通过元类动态创建实例的方式,并说明了如何在实例化时执行__init__方法,... 目录@orm.reconstructorSQLAlchemy的回滚关联其他模型数据库基本操作将数据添

JAVA项目swing转javafx语法规则以及示例代码

《JAVA项目swing转javafx语法规则以及示例代码》:本文主要介绍JAVA项目swing转javafx语法规则以及示例代码的相关资料,文中详细讲解了主类继承、窗口创建、布局管理、控件替换、... 目录最常用的“一行换一行”速查表(直接全局替换)实际转换示例(JFramejs → JavaFX)迁移建

Python实现快速扫描目标主机的开放端口和服务

《Python实现快速扫描目标主机的开放端口和服务》这篇文章主要为大家详细介绍了如何使用Python编写一个功能强大的端口扫描器脚本,实现快速扫描目标主机的开放端口和服务,感兴趣的小伙伴可以了解下... 目录功能介绍场景应用1. 网络安全审计2. 系统管理维护3. 网络故障排查4. 合规性检查报错处理1.

Go异常处理、泛型和文件操作实例代码

《Go异常处理、泛型和文件操作实例代码》Go语言的异常处理机制与传统的面向对象语言(如Java、C#)所使用的try-catch结构有所不同,它采用了自己独特的设计理念和方法,:本文主要介绍Go异... 目录一:异常处理常见的异常处理向上抛中断程序恢复程序二:泛型泛型函数泛型结构体泛型切片泛型 map三:文

Python轻松实现Word到Markdown的转换

《Python轻松实现Word到Markdown的转换》在文档管理、内容发布等场景中,将Word转换为Markdown格式是常见需求,本文将介绍如何使用FreeSpire.DocforPython实现... 目录一、工具简介二、核心转换实现1. 基础单文件转换2. 批量转换Word文件三、工具特性分析优点局

Python中4大日志记录库比较的终极PK

《Python中4大日志记录库比较的终极PK》日志记录框架是一种工具,可帮助您标准化应用程序中的日志记录过程,:本文主要介绍Python中4大日志记录库比较的相关资料,文中通过代码介绍的非常详细,... 目录一、logging库1、优点2、缺点二、LogAid库三、Loguru库四、Structlogphp

JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)

《JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)》:本文主要介绍如何在IntelliJIDEA2020.1中创建和部署一个JavaWeb项目,包括创建项目、配置Tomcat服务... 目录简介:一、创建项目二、tomcat部署1、将tomcat解压在一个自己找得到路径2、在idea中添加

C++,C#,Rust,Go,Java,Python,JavaScript的性能对比全面讲解

《C++,C#,Rust,Go,Java,Python,JavaScript的性能对比全面讲解》:本文主要介绍C++,C#,Rust,Go,Java,Python,JavaScript性能对比全面... 目录编程语言性能对比、核心优势与最佳使用场景性能对比表格C++C#RustGoJavapythonjav

MyBatis中的两种参数传递类型详解(示例代码)

《MyBatis中的两种参数传递类型详解(示例代码)》文章介绍了MyBatis中传递多个参数的两种方式,使用Map和使用@Param注解或封装POJO,Map方式适用于动态、不固定的参数,但可读性和安... 目录✅ android方式一:使用Map<String, Object>✅ 方式二:使用@Param