基于Python企业的机器⼈制作
基于Python的企业的机器⼈制作
随着企业的普及,越来越多的公司、单位⽤上了企业,⾃从⽤了企业确实办(jia)公(ban)效(shi)率(jian)⾼(chang)。不得不说企业是⼀个好产品,⽐如今天要谈的机器⼈就可以帮我们完成⼀些重复繁琐的提醒⼯作。话不多说先来看⼀个使⽤场景吧!
应⽤场景:定时提醒打卡
⼤家都知道学习强国是⼀个很棒的学习平台,上⾯的学习资源应有尽有,⽽且全部免费。我们每个⼈都应该好好学习,但有的时候忙起来难免会忘记打开APP。作为⼩组长⾃然应该不断地提醒组员,但提醒多了⾃⼰也觉得枯燥、惹⼈烦。这就⾮常适合⽤机器⼈来做这个事啦。
步骤1:机器⼈配置
1.添加机器⼈
2.机器⼈⼯作原理
机器⼈可以简单的理解为⼀个“智能闹钟”,你可以定时定点地触发它,从⽽让它为你完成⼀些重复的提醒⼯作。如何触发机器⼈为你⼯作呢?我们要先了解以下⼏个概念。
(1)Webhook地址
Webhook地址可以理解为是每⼀个机器⼈的"⽹址"或"电话号码",每个机器⼈的Webhook地址都是唯⼀的,有了Webhook地址,才能到机器⼈,并触
发机器⼈为你⼯作;成功添加机器⼈后,将⿏标移动到机器⼈上,在弹出对话框中可以看到Webhook地址信息。
(2)消息类型和数据格式
知道了机器⼈的“通讯地址”,要想触发机器⼈,还需要给机器⼈发送提醒的消息。根据官⽅⽂档说明发送的消息数据是json格式。
{
"msgtype": "text",
"text": {
"content": "同志们,今天你学习强国了吗?",
"mentioned_list":["wangqing","@all"],
"mentioned_mobile_list":["138********","@all"]
}
}
参数说明:
参数是否必填说明
msgtype是消息类型,此时固定为text
content是⽂本内容,最长不超过2048个字节,必须是utf8编码
mentioned_list否userid的列表,提醒中的指定成员(@某个成员),@all表⽰提醒所有⼈
mentioned_mobile_list否⼿机号列表,提醒⼿机号对应的成员(@某个成员),@all表⽰提醒所有⼈
步骤2:⽤Python触发机器⼈
利⽤Python语⾔的requests库,就可以轻松构造触发机器⼈发消息的⽹络请求。核⼼代码如下:
import requests
url = "qyapi.weixin.qq/cgi-bin/webhook/send?key="  #这⾥就是机器⼈的Webhook地址
headers = {"Content-Type":"application/json"}                  #http数据头,类型为json
data = {
"msgtype": "text",
"text": {
"content": "学习强国打卡啦",                          #让机器⼈发送的消息内容。
"mentioned_list":["@all",],                        # @全体成员
}
python新手代码userid}
r = requests.post(url,headers=headers,json=data)                # 利⽤requests库发送post请求
运⾏Python脚本效果如下:
如果不会写代码,关注⽂末字节杂谈⼆维码,回复"机器⼈",即可下载代码,更换Webhook地址,按照步骤三上传腾讯云部署就可以愉快的使⽤啦。步骤3:将触发程序部署到腾讯云函数
  如果每次都是⾃⼰⼿动运⾏代码触发提醒也是⽐较累的,如何实现定时定点运⾏脚本,触发机器⼈呢?其实⽅法有很多,⽐如利⽤python加⼀个定时任务等,但是这样你⾃⼰的电脑要24⼩时运⾏着,显然不是最优⽅案。个⼈尝试下来,⽐较⽅便的做法是把脚本部署到腾讯云的云函数服务中,从此提醒⾃动化。(注意:云函数的免费额度基本够⽤)
1.注册腾讯云账号,登录后添加云函数
  (1)百度搜索“腾讯云”——点击进⼊官⽹——注册——登录——点击右上⾓控制台,即可
  (2)添加云函数服务
2.封装成main_handler函数
由于腾讯云函数默认调⽤的函数名为``,我们需要将之前的核⼼python代码封装成该函数名的函数,保持⽂件名:index.py
import requests
def main_handler(event, context):
url = "qyapi.weixin.qq/cgi-bin/webhook/send?key="  #这需要替换成你⾃⼰的Webhook地址
headers = {"Content-Type":"application/json"}                  #http数据头,类型为json
data = {
"msgtype": "text",
"text": {
"content": "今天你学习强国了吗?",                          #让机器⼈发送的消息内容。
"mentioned_list":["@all",],                        # @全体成员
}
}
r = requests.post(url,headers=headers,json=data)                # 利⽤requests库发送post请求
3.上传python⽂件
4.设置触发时间
单击函数名,可以修改云函数的相关配置,
选择触发管理—创建触发器。
可以设置⾃定义触发周期
简单解释上图中Cron表达式0 0 9,12,16 * * * *:
共有7位组成,⽤空格间隔,
*表⽰所有值。在“⽇”字段中,* 表⽰每天。
写在最后
机器⼈的发内容,可以⾃⼰建⽴⼀个List或数据库表,随机读取更有意思;
腾讯云云函数的每⽉免费额度完全够⽤,每⽉免费调⽤100万次哦;
如果不会写代码,关注下⽅字节杂谈⼆维码,回复"机器⼈",即可下载代码,更换Webhook地址即可上传腾讯云部署啦。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。