因为工作需要,需要在钉钉群里添加一个可以每天定时发送消息的机器人,我找了很多网页查看,发现资料并不是很全,现在做出来了,就想发表出来,看看能不能帮到大家。接下来就进入正题。
一.在钉钉群设置创建一个机器人。
二.Python绑定机器人并实现消息发送。
1. 以下是Python实现发送更新日报的消息。
import requests
import json
def send_dingtalk_message(webhook_url,message,all):
# 构建钉钉消息
message = {
"msgtype": "text",
"text": {
"content": message
},
"at": {
"isAtAll": all
}
}
# 发送HTTP POST请求
headers = {
"Content-Type": "application/json"
}
# 将消息转换为JSON格式
message_json = json.dumps(message)
# 发送请求
requests.post(webhook_url, data=message_json, headers=headers)
if __name__ == "__main__":
#webhook_url:机器人的token号码,message:呈现内容。all:是否@全体发送
webhook_url='https://oapi.dingtalk.com/robot/send?access_token=your_webhook_url'
message='更新日报'
all=True
send_dingtalk_message(webhook_url,message,all)
2.之后找到自己机器人设置中的Webhook,复制并粘贴到代码中,因为我们需要发送“更新日报”的消息,所以关键词设置中需要出现“日报”的关键词。之后运行脚本,钉钉机器人就会发送指定消息喽。
三.定时发送。
第一个方法是,我是在自己的服务器上使用命令实现的定时发送。如果一样的话大家可以跟我一起来,或者第二个方法,可以在代码中直接添加定时发送。
1.进入到脚本存放的路径下。
2.crontab -e命令进入。(sudo是以管理员命令进入)
3.按i进行设置。
0 17代表时间,1-5代表周一到周五,在这里我设置的是周一到周五下午五点定时发送。后面跟的是python解释器的地址(环境的地址)和脚本的路径。
“* * * * * ”代表的是每分钟发送一次,大家可以先设置一下看看是否成功。
4.按“esc”退出设置,输入“:wq”进行保存自己的设置。之后退出去就可以实现了。