itchat是一个开源的个人微信接口,利用itchat可以实现例如微信自动回复,定时发送信息。详细可查看itchat项目文档,这里我只介绍一些简单的操作,并用10行代码完成定时发送消息。
pip install itchat
登入并打印登入信息
import itchat
#hotReload退出程序后暂存登陆状态
itchat.auto_login(hotReload=True)
#toUserName是发送对象,fifehelper是文件助手
itchat.send("登入itchat!",toUserName="filehelper")
登出
itchat.logout()
import itchat
def login():
print('微信登入')
def out():
print('微信登出')
#登入登出
itchat.auto_login(hotReload=True,loginCallback=login, exitCallback=out)
这里我们可以用APScheduler,相关用法可以参考APScheduler官方文档翻译
首先安装
pip install apscheduler
我们只需要读懂这个程序就可以了,掌握的“cron”就基本可以了。
from apscheduler.schedulers.blocking import BlockingScheduler
def job_function():
print "Hello World"
sched = BlockingScheduler()
# 任务会在6月、7月、8月、11月和12月的第三个周五,00:00、01:00、02:00和03:00触发
sched.add_job(job_function, 'cron', month='6-8,11-12', day='3rd fri', hour='0-3')
sched.start()
那接下来我们就来设置每天中午12点给自己发送午安信息。
# 任务会在每天中午12:00触发
sched.add_job(job_function, 'cron', hour=12)
import itchat
from apscheduler.schedulers.blocking import BlockingScheduler
def job_function():
#发送"午安"给文件助手
itchat.send("午安", toUserName="filehelper")
sched = BlockingScheduler()
# 任务会在每天中午12:00触发
sched.add_job(job_function,'cron',hour=12)
if __name__ == '__main__':
itchat.login()
sched.start()
itchat.run()
评论有大佬说,itchat不能用,我也不清楚原因,可能大概是我之前有用过,我的确也不知道原因,因为测试的时候一直是用直接的微信号,能够成功登录,所以文章有疏忽,大家可以用其他方法登录。