从零搭建微信机器人(一):注册企业微信创建应用
从零搭建微信机器人(二):发送文本消息
从零搭建微信机器人(三):定时触发任务
从零搭建微信机器人(四):封装消息发送接口
本项目的源码链接:hanfangyuan/wechat-robot,本文对应仓库tag为3.0
在上一篇从零搭建微信机器人(二):发送文本消息中,我们已经知道了如何向微信发送文本消息,本篇博客将要介绍如何通过设置定时触发任务,自动向微信发送消息。
1. 安装apscheduler
apscheduler的全称是advanced python scheduler,使用pip命令直接安装pip install apscheduler
2. apscheduler使用简介
2.1 demo
1 | from apscheduler.schedulers.blocking import BlockingScheduler |
2.2 代码说明
scheduler.add_job(print_text, 'cron', ('cron:', 'good morning'), hour=7, minute=30)
该代码是添加要执行的任务,并且设置任务定时触发的方式,以及触发的时间。
参数说明:print_text是函数名称,注意名称后面没有括号。
- ‘cron’是触发器类型,该类型表示在具体时刻执行任务, hour=7, minute=30即表示在每天7:30分执行传入的函数。除了hour, minute字段还有month,day,second字段,字段也可以设置许多类型的值,如下图。还可以把’cron’换成’interval’改成另一种触发器
scheduler.add_job(print_text, 'interval', ('interval:', 'hello world'), minutes=1)
,该触发器表示间隔某一段时间周期性执行任务。 - (‘cron:’, ‘good morning’)是函数的参数,必须是元组的形式,即一个参数时也要写成(arg, )元组形式,传入的函数没有参数时省略该项。
- scheduler.start()程序在该处被阻塞,后面的代码不会被执行。
3. 定时发送消息
我们通过apscheduler把向微信发送消息的函数设置成定时触发的方式,当时间为整分钟时发送消息。代码如下:
1 | import requests |
本篇文章主要介绍了python的apscheduler模块,使用该模块我们可以在某些时刻自动向微信推送消息,可以在微信上实现日程提醒等功能。为了使项目代码逻辑更清晰,下一篇将介绍对微信消息发送接口进行封装。
上一篇:从零搭建微信机器人(二):发送文本消息
下一篇:从零搭建微信机器人(四):封装消息发送接口