自动化系列(五)Python实现企业微信机器人

自动化系列(五)Python实现企业微信机器人

上期介绍了如何定时推送数据到钉钉群,这次介绍如何定时推送数据到企业微信群。

添加自定义机器人

创建群聊:企业微信没有场景群,可以拉三五好友进群,然后再给他们踢出去,这样就有了一个只有自己的群。

添加群机器人:右上角... -> 添加群机器人 -> 添加机器人 -> 创建一个新机器人

查看Webhook:点击右侧刚才创建的机器人 -> 点解链接进入查看详细信息 -> 点击复制

有的公司限制了个人创建自定义机器人的权限,需要找dba帮忙开下权限~

image-20221202233235741

发送文本类消息

import requests
import json# 发送文本消息
def send_text(webhook, content, mentioned_list=None, mentioned_mobile_list=None):header = {"Content-Type": "application/json","Charset": "UTF-8"}data ={"msgtype": "text","text": {"content": content,"mentioned_list":mentioned_list,"mentioned_mobile_list":mentioned_mobile_list}}data = json.dumps(data)info = requests.post(url=webhook, data=data, headers=header)# 发送markdown消息
def send_md(webhook, content):header = {"Content-Type": "application/json","Charset": "UTF-8"}data ={"msgtype": "markdown","markdown": {"content": content}}data = json.dumps(data)info = requests.post(url=webhook, data=data, headers=header)
webhook = "****"send_text(webhook, content='HsuHeinrich', mentioned_mobile_list=[1****])
send_md(webhook, content='# 一级标题 \n 微信搜索HsuHeinrich,发现更多精彩👍')

结果如下:

发送文件

企业微信是支持推送文件的,首先将文件上传至企业微信指定的地址,然后返回给你media_id。文件应小于20M,且media_id有效时间为三天。

import pandas as pd
from faker import Faker
from faker.providers import BaseProvider, internet 
from random import randint# 构造pandas数据
# 自定义fake
fake = Faker('zh_CN')
class MyProvider(BaseProvider):def myCityLevel(self):cl = ["一线", "二线", "三线", "四线+"]return cl[randint(0, len(cl) - 1)]def myGender(self):g = ['F', 'M']return g[randint(0, len(g) - 1)]def myDevice(self):d = ['Ios', 'Android']return d[randint(0, len(d) - 1)]
fake.add_provider(MyProvider)# 构造假数据
uid=[]
cityLevel=[]
gender=[]
device=[]
age=[]
activeDays=[]
for i in range(10):uid.append(i+1)cityLevel.append(fake.myCityLevel())gender.append(fake.myGender())device.append(fake.myDevice())age.append(fake.random_int(min=18, max=65))activeDays.append(fake.random_int(min=0, max=180))raw_data= pd.DataFrame({'uid':uid,'cityLevel':cityLevel,'gender':gender,'device':device,'age':age,'activeDays':activeDays,})# 通过style美化df
# 增加色阶、标题,隐藏索引、uid列
title = '活跃统计'
df = raw_data.style\.background_gradient(cmap='Pastel1',subset=['activeDays'])\.set_caption(title)\.hide_index()\.hide_columns(subset=['uid'])\.to_excel('file_demo.xlsx', engine='openpyxl', index=False)
# 发送文件
def send_file(webhook, file):# 获取media_idkey = webhook.split('key=')[1]id_url = f'https://qyapi.weixin.qq.com/cgi-bin/webhook/upload_media?key={key}&type=file'files = {'file': open(file, 'rb')}res = requests.post(url=id_url, files=files)media_id = res.json()['media_id']header = {"Content-Type": "application/json","Charset": "UTF-8"}data ={"msgtype": "file","file": {"media_id": media_id}}data = json.dumps(data)info = requests.post(url=webhook, data=data, headers=header)
webhook = "****"
file = 'file_demo.xlsx'
send_file(webhook, file)

image-20221224222709773

其他类型消息

微信群机器人也支持其他类型的消息,例如图文、各种卡片。只要按照企业微信开发者中心定义数据类型,替换上面函数定义的data即可,喜欢折腾的同学可以自行尝试~

总结

至此,数据分析系列中的技能实践已经创作结束,当然后续如果发现值得分享的技能技巧,也会再次补充。感谢大家一直以来的支持。祝大家步步高升,薪资大涨~

鉴于数据分析的场景较多,后续会单独开一个专题分析系列,逐一为大家介绍各种各样场景下的专题分析。咱们下期再见!

共勉~

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

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

相关文章

企业微信机器人 api 使用

key 来自: 一、发送消息 function sendText(key , text , mentioned []) {try {axios({method: post,url: https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key key,data: {msgtype: text,text: {content: text,mentioned_list: mentioned}}})} catch (er…

每个人都可以用的开源微信机器人

经历过UOS web协议的重放荣光,又经过一段时间的封禁,又有大神把UOS web协议救回来了。免费的快乐又重新回来了,不是吗? 这意味着每个人都可以用Wechaty搞事情了,什么服务器通知,定时给女友发微信,群发消息…

WorkTool(一)企业微信群管理机器人实现

简介 WorkTool 主程序是一个开源的安卓应用 APP,不需要 root 权限就可以直接安装。 源码友情链接 测试发送消息 API 使用 WorkTool APP 来自动执行一个自己企微里的账号,并通过后台调用对应的 API 来驱动机器人自动执行任务,如收发消息、自…

用企业微信机器人搞事情

从把办公通信工具从微信迁移到企业微信后,群组里面多了一个叫“群聊机器人”的功能,如下图,我在某个群建了一个叫“测试”的机器人。 听名字会让人以为群里面有个能自动答复的机器人,它就能跟他对话。其实并不能,他的功…

VX线报机器人的使用

使用步骤: 1. 下载上面的压缩包,并解压到同一个文件夹,没有解压是使用不了的 2. 双击Update.exe来下载机器人框架核心文件 3. 把com.bbs.weiququ.vlw.dll文件移到Plugin文件夹下 4.双击【我的框架.exe】来启动机器人框架 5.在我的帐号页…

AI热潮来袭||网友:AI会不会抢自己的饭碗啊~~~

ChatGPT还没搞懂,平地一声雷,GPT-4重磅发布!瑟瑟发抖的吃瓜群众逐渐变多:AI会不会抢自己的饭碗啊~~~ 答案是:会! 人工智能助手“阿里小蜜”承担95%的客服咨询; 机器人“天巡”接替运维人员以…

用友助力中核集团建设财务共享中心新华发电分中心,实现业财融合

企业在进行决策时需要大量的财务信息作为依据,财务共享中心的建设可以帮助企业将财务和业务分离后重新有序融合,使得决策数据更有价值,也帮助企业的管理和决策更加贴合实际。 新华水力发电有限公司(简称“新华发电”)…

【占星学】天蝎座女生性格特点

一、性格特点 天蝎座女的个性非常细腻,拥有非常敏锐的观察能力,外表总是一副冷漠的样子,但其实她们内心非常希望能够有一个人懂自己,天蝎座的女生其实是典型的外冷内热。此外,天蝎座的女生骨子里有争强好胜的性格&…

html星座代码,各星座详细页面.html

各星座详细页面 $axure.utils.getTransparentGifPath function() { return resources/images/transparent.gif; }; $axure.utils.getOtherPath function() { return resources/Other.html; }; $axure.utils.getReloadPath function() { return resources/reload…

如何搭建产品知识库?让产品知识库管理更有序高效!

任何一款成功的产品,都需要将自己的产品知识(内部制作和外部搜集)进行汇总和整理,帮助用户可以运用产品知识库中的内容,去解决实际应用中存在的问题。 有序高效的知识库管理 当一款产品从研发到投入使用,整…

基于GPT搭建私有知识库聊天机器人(一)实现原理

文章链接: 基于GPT搭建私有知识库聊天机器人(二)环境安装 基于GPT搭建私有知识库聊天机器人(三)向量数据训练 基于GPT搭建私有知识库聊天机器人(四)问答实现 1、成品演示 支持微信聊天支持网…

对阿,为什么大学程序设计老师不去外面公司当程序员?

我在大学的时候,老师都感觉很厉害的样子,一节课讲下来不带断句的(当然也碰到过一本书照着念不错一个字的)大学老师的工资应该没程序员的工资高吧,这其中存在着怎样的原因呢? 先看看网友是怎么吐槽的&#x…

程序员们,你会考虑使用中文编程吗?

众所周知,编程语言有一条无形的“鄙视链”。 Java和C#相互不服,并且看不起写Python的,Python看不起PHP,PHP看不起前端。而中文编程就在这个语言“鄙视链”的底端艰难生存。 有人对中文编程嗤之以鼻,相比于“人生苦短…

为什么大学还在教过时的软件技术,程序员:只能说你根本不懂软件

这几天小编一个刚毕业的学弟来向我取经,也抱怨了一些自己入职后工作上的事情。其中“为什么大学教的都是一些过时的软件技术,比如JSP,工作之前还要从头学习新的技术”这个问题让我特别有感触。按理说作为计算机科学来说,优势就在于…

DX滑块验证码别乱捅!一不小心就反爬了。

​大家好,我是TheWeiJun,欢迎来到我的公众号。今天我们将探讨一个有趣的话题:逆向滑块验证码。在互联网时代,随着网络安全问题日益引起人们的关注,各种验证码技术被广泛应用于各种网站和应用程序中,其中包括…

《当下的哲学》[法]阿兰.巴迪欧(作者)epub+mobi+azw3格式下载

下载地址:点我 下载后手机可浏览 内容简介 本书是巴迪欧与齐泽克针对同一问题所做对话的记录,包括两人各自的观点概述,以及一次激烈的辩论,从中可以看出两人之间存在怎样的一致性与分歧。这既是一封哲学讨论的邀请函,也…

读书计划-2008年12月

凭心而论,广图的图书更新速度还是很不错的。不过今天也发现,哲学、人文类的图书,越是新的书越少人借,一个小时里就发现有差不多10本是从来没有人借过的。 本月读书计划。 1. 《软件开发的滑铁卢》 广图一共有三本,到…

书评“世界杯”

昨天晚上,手捧《哈扎尔词典》的米洛拉德帕维奇以1比0敲碎了君特格拉斯的《铁皮鼓》;斯拉沃热齐泽克拎着《伊拉克:借来的壶》2比2浇灭了贝侯赛因奥巴马的《我父亲的梦想》和他《无畏的希望》。 今天早上,0比0,史蒂文杰拉…

“象征界”的奇观:刘天怜花鸟工笔作品印象

有人说:“创新”是西洋画的基调,中国画的焦点是“承传”。就是说,西画必须花样翻新,挑战前人,甚至要推倒重来,唯此才可能在艺术史上占有一席之地;中国画强调以古人为师,重视师徒之间…

营销,就是营销人性的弱点

营销,就是营销人性的弱点一切营销都是弱点营销,针对的是我们与生俱来的人性弱点和后天养成的世俗判断。支撑我们做出购买行为的,不是理性的判断,而是我们自以为理性实际上十分感性的判断。 (1)多就是好&…