如何使用Python将信息推送至企业微信内部群?

2026-05-19 20:001阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1377个文字,预计阅读时间需要6分钟。

如何使用Python将信息推送至企业微信内部群?

前言:前一篇文童提到了使用wechatpy库来实现企业微信应用登录:Django + Taro前后端分离项目实现企业微信登录。实际上,这个库可以实现的功能非常丰富,不仅包括基本微信开发所需的登录功能,还涵盖了更多高级功能。

内容:

1.Django + Taro前后端分离项目实现企业微信登录:通过wechatpy库,我们可以轻松实现企业微信应用登录功能,从而方便用户登录和验证。

2.功能丰富:wechatpy库不仅支持登录功能,还包括企业微信应用消息发送、消息接收、用户管理、部门管理等多种功能。

3.高级功能:wechatpy库还支持企业微信应用的第三方登录、自定义菜单、应用授权等高级功能,为企业微信应用开发提供了丰富的可能性。

4.微信开发拓展:wechatpy库的丰富功能可以满足基本微信开发需求,同时也可以拓展到更多功能,如企业微信应用与第三方服务的集成等。

前言

之前一篇文章提到了使用wechatpy库来实现企业微信应用登录:Django + Taro 前后端分离项目实现企业微信登录

其实这个库可以实现的功能非常多,基本微信开发涉及到的功能都能实现。

本文介绍一个很常用的场景:实时推送信息到企业微信群里。

安装

首先安装wechatpy库

pip install wechatpy

如果运行的时候提示需要安装其他库(比如加解密相关的)那就按照提示安装,这里不啰嗦了哈

创建企业微信应用

首先去企业微信后台创建一个应用,把应用编号(app_id)记录下来

顺便去后台把企业编号(corp_id)和密匙(secret)也记录下来

开始代码了

没啥别的,开始写代码

创建应用对象

直接上代码

from wechatpy.work import WeChatClient from wechatpy.work.client.api import WeChatAgent client = WeChatClient('corp_id', 'secret') agent: WeChatAgent = client.agent.get('app_id')

这里面要填的几个ID都是上面提到的

有了这个 agent 对象就可以操作这个企业微信应用了~

创建聊天对象

要发信息,首先得有个聊天对象,这不,我们来创建一个

from wechatpy.work.client.api import WeChatAppChat chat = WeChatAppChat(client=client) 新建群

前面说到要发信息到群里,那还得建一个群

CHAT_ID = 'test' result = chat.create(chat_id=CHAT_ID, name='群里名称', owner='群主ID', user_list=['群主ID', '群员ID1', '群员ID2', '群员ID3'])

就是这样,简单易懂,建群的同时在 user_list 参数指定要邀请的群员ID

(这些群主ID、群员ID请自行在企业微信后台查询,就是成员的ID)

封装一下常用操作 发送文本信息

def send_text(content): print(chat.send_text(CHAT_ID, content))

就是简单的发送文本信息,效果如下:

发送文本卡片

def send_text_card(title, description, url, btn_text): print(chat.send(CHAT_ID, 'textcard', title=title, description=description, url=url, btntxt=btn_text))

这里我使用了官方的例子

send_text_card('中秋节礼品领取', '<div class=\"gray\">2016年9月26日</div> <div class=\"normal\"> 恭喜你抽中iPhone 7一台,领奖码:520258</div><div class=\"highlight\">请于2016年10月10日前联系行 政同事领取</div>', 'work.weixin.qq.com/', '谨防上当')

效果如下:

发送图片

def send_image(image_file): media = WeChatMedia(client) with open(image_file, 'rb') as f: result = media.upload('image', f) print(result) if 'media_id' in result: print(chat.send(CHAT_ID, 'image', media_id=result['media_id']))

很简单,参数传入图片路径就行

效果如下

发送Markdown格式内容

这个我测试了发现支持的markdown格式很有限,不要抱太大期望

def send_markdown(md_file): with open(md_file, 'r', encoding='utf-8') as f: print(chat.send(CHAT_ID, 'markdown', content=f.read()))

随便找了一段来发,效果如下

可以看到连markdown的表格都不支持……

群聊重命名

没啥好说的

def rename_chat(new_name): print(chat.update(CHAT_ID, name=new_name)) send_text(f'群聊名称已修改为:{new_name}') 邀请用户

def invite(user_id): print(chat.update(CHAT_ID, add_user_list=[user_id])) send_text(f'邀请用户:{user_id}') OK

OK,写完了,就是这样,很简单

使用到企业微信推送的场景还是比较多的,比如在Sentry监控里加入一个webhook,监控到项目报错就把报错信息推送到群里,方便随时掌握项目报错信息~

我们目前的应用场景还有一个是推送一些报表到群里,可以看到这些表格都是图片格式(没办法,谁叫企业微信不支持完整的markdown格式……)

效果如下

对了,关于用Python生成表格图片的,我下次再写(水)一篇,溜了~

如何使用Python将信息推送至企业微信内部群?

微信公众号:「程序设计实验室」 专注于互联网热门新技术探索与团队敏捷开发实践,包括架构设计、机器学习与数据分析算法、移动端开发、Linux、Web前后端开发等,欢迎一起探讨技术,分享学习实践经验。

本文共计1377个文字,预计阅读时间需要6分钟。

如何使用Python将信息推送至企业微信内部群?

前言:前一篇文童提到了使用wechatpy库来实现企业微信应用登录:Django + Taro前后端分离项目实现企业微信登录。实际上,这个库可以实现的功能非常丰富,不仅包括基本微信开发所需的登录功能,还涵盖了更多高级功能。

内容:

1.Django + Taro前后端分离项目实现企业微信登录:通过wechatpy库,我们可以轻松实现企业微信应用登录功能,从而方便用户登录和验证。

2.功能丰富:wechatpy库不仅支持登录功能,还包括企业微信应用消息发送、消息接收、用户管理、部门管理等多种功能。

3.高级功能:wechatpy库还支持企业微信应用的第三方登录、自定义菜单、应用授权等高级功能,为企业微信应用开发提供了丰富的可能性。

4.微信开发拓展:wechatpy库的丰富功能可以满足基本微信开发需求,同时也可以拓展到更多功能,如企业微信应用与第三方服务的集成等。

前言

之前一篇文章提到了使用wechatpy库来实现企业微信应用登录:Django + Taro 前后端分离项目实现企业微信登录

其实这个库可以实现的功能非常多,基本微信开发涉及到的功能都能实现。

本文介绍一个很常用的场景:实时推送信息到企业微信群里。

安装

首先安装wechatpy库

pip install wechatpy

如果运行的时候提示需要安装其他库(比如加解密相关的)那就按照提示安装,这里不啰嗦了哈

创建企业微信应用

首先去企业微信后台创建一个应用,把应用编号(app_id)记录下来

顺便去后台把企业编号(corp_id)和密匙(secret)也记录下来

开始代码了

没啥别的,开始写代码

创建应用对象

直接上代码

from wechatpy.work import WeChatClient from wechatpy.work.client.api import WeChatAgent client = WeChatClient('corp_id', 'secret') agent: WeChatAgent = client.agent.get('app_id')

这里面要填的几个ID都是上面提到的

有了这个 agent 对象就可以操作这个企业微信应用了~

创建聊天对象

要发信息,首先得有个聊天对象,这不,我们来创建一个

from wechatpy.work.client.api import WeChatAppChat chat = WeChatAppChat(client=client) 新建群

前面说到要发信息到群里,那还得建一个群

CHAT_ID = 'test' result = chat.create(chat_id=CHAT_ID, name='群里名称', owner='群主ID', user_list=['群主ID', '群员ID1', '群员ID2', '群员ID3'])

就是这样,简单易懂,建群的同时在 user_list 参数指定要邀请的群员ID

(这些群主ID、群员ID请自行在企业微信后台查询,就是成员的ID)

封装一下常用操作 发送文本信息

def send_text(content): print(chat.send_text(CHAT_ID, content))

就是简单的发送文本信息,效果如下:

发送文本卡片

def send_text_card(title, description, url, btn_text): print(chat.send(CHAT_ID, 'textcard', title=title, description=description, url=url, btntxt=btn_text))

这里我使用了官方的例子

send_text_card('中秋节礼品领取', '<div class=\"gray\">2016年9月26日</div> <div class=\"normal\"> 恭喜你抽中iPhone 7一台,领奖码:520258</div><div class=\"highlight\">请于2016年10月10日前联系行 政同事领取</div>', 'work.weixin.qq.com/', '谨防上当')

效果如下:

发送图片

def send_image(image_file): media = WeChatMedia(client) with open(image_file, 'rb') as f: result = media.upload('image', f) print(result) if 'media_id' in result: print(chat.send(CHAT_ID, 'image', media_id=result['media_id']))

很简单,参数传入图片路径就行

效果如下

发送Markdown格式内容

这个我测试了发现支持的markdown格式很有限,不要抱太大期望

def send_markdown(md_file): with open(md_file, 'r', encoding='utf-8') as f: print(chat.send(CHAT_ID, 'markdown', content=f.read()))

随便找了一段来发,效果如下

可以看到连markdown的表格都不支持……

群聊重命名

没啥好说的

def rename_chat(new_name): print(chat.update(CHAT_ID, name=new_name)) send_text(f'群聊名称已修改为:{new_name}') 邀请用户

def invite(user_id): print(chat.update(CHAT_ID, add_user_list=[user_id])) send_text(f'邀请用户:{user_id}') OK

OK,写完了,就是这样,很简单

使用到企业微信推送的场景还是比较多的,比如在Sentry监控里加入一个webhook,监控到项目报错就把报错信息推送到群里,方便随时掌握项目报错信息~

我们目前的应用场景还有一个是推送一些报表到群里,可以看到这些表格都是图片格式(没办法,谁叫企业微信不支持完整的markdown格式……)

效果如下

对了,关于用Python生成表格图片的,我下次再写(水)一篇,溜了~

如何使用Python将信息推送至企业微信内部群?

微信公众号:「程序设计实验室」 专注于互联网热门新技术探索与团队敏捷开发实践,包括架构设计、机器学习与数据分析算法、移动端开发、Linux、Web前后端开发等,欢迎一起探讨技术,分享学习实践经验。