以下是Python开发企业微信机器人每天定时发消息的完整攻略。
一、准备工作
-
获取企业微信机器人的
webhook
地址,可以通过企业微信管理后台->应用管理->自建应用->基本信息->Webhook
中获取。此处以https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
为例。 -
安装
requests
模块。使用命令pip install requests
进行安装。
二、编写代码
import requests
import datetime
import time
webhook_url = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX'
def send_msg(msg):
headers = {'Content-Type': 'application/json; charset=utf-8'}
data = {
"msgtype": "text",
"text": {
"content": msg
}
}
r = requests.post(webhook_url, headers=headers, json=data)
print(r.json())
if __name__ == '__main__':
while True:
now_time = datetime.datetime.now().strftime('%H:%M')
if now_time == '09:00':
send_msg('早安,各位同事!祝大家今天工作愉快!')
elif now_time == '18:00':
send_msg('下班啦,各位同事!辛苦一天了,好好休息!')
# 等待一分钟
time.sleep(60)
代码实现了企业微信机器人定时发送消息,首先定义了send_msg
函数实现发送消息的逻辑,然后在if __name__ == '__main__'
中使用datetime
模块获取当前时间,判断是否到达特定时间点,进行消息的发送,最后使用time
模块等待一分钟,以避免过多地发送webhook请求。
三、运行代码
保存上述代码到.py
文件中,使用命令python test.py
进行运行,即可在每天9点和18点接收到企业微信机器人发送的消息。若要停止定时发送,可以在命令行中按下Ctrl+C
中断程序运行。
四、示例说明
-
如果要在每天的16点30分发送消息,只需要修改代码中的
'09:00'
和'18:00'
为'16:30'
即可。 -
如果要发送图文消息,可以参照以下代码:
import requests
webhook_url = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX'
def send_msg(title, description, pic_url, msg_url):
headers = {'Content-Type': 'application/json; charset=utf-8'}
data = {
"msgtype": "news",
"news": {
"articles": [
{
"title": title,
"description": description,
"url": msg_url,
"picurl": pic_url
}
]
}
}
r = requests.post(webhook_url, headers=headers, json=data)
print(r.json())
if __name__ == '__main__':
send_msg('标题', '描述', 'https://www.example.com/pic.jpg', 'https://www.example.com/')
代码中使用了news
类型的消息,填写了消息的标题、描述、图片地址和点击打开的链接地址,即可发送图文消息。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python开发企业微信机器人每天定时发消息实例 - Python技术站