需求:

想实现 每周一到周五下班钉钉打卡提醒,每周四发周报提醒

使用了二种方法实现

一:apscheduler,代码如下

 import json,requests,datetime
from apscheduler.schedulers.blocking import BlockingScheduler
access_token = 'XXXXXXXX' #钉钉token
contentWee ='今天周四吆,记得发周报'
contentPun = '下班不打卡,辛苦也白搭' def notify(access_token,conId,content,tele):
'''
钉钉通知
:param access_token:
:param conId: 0:艾特所有人 1:艾特个人 2或其他:普通通知
:param content: 通知内容
:param tele: conId==1时使用,tele: [13800000000,13800000001]
:return:
'''
url = 'https://oapi.dingtalk.com/robot/send?access_token=' + access_token if conId == 0:
# 艾特所有人
con = {
"msgtype": "text",
"text": {
"content": content
},
"at": {
"isAtAll": 'true',
"atMobiles": [ ]
}
}
elif conId == 1:
# 艾特个人
con = {
"msgtype": "text",
"text": {
"content": content
},
"at": {
"isAtAll": 'false',
"atMobiles": tele
}
}
else:
# 普通通知
con = {
"msgtype": "markdown",
"markdown": {
"title": "hhh",
"text": content
},
} data = json.dumps(con)
headers = {'content-type': 'application/json'}
r2 = requests.post(url, data=data, headers=headers)
print(r2.text) if __name__ == '__main__':
tele = [13800000000,13800000001]
scheduler = BlockingScheduler()
# mon-fri: 周一到周五,也可以写成 1-5 ,时间 18:30 ,ars:方法 notify入参;每周-到周五下午六点半执行notify方法
scheduler.add_job(notify, 'cron', day_of_week='mon-fri', hour=18, minute=30, args=[access_token,1,contentPun,tele])
#同上,每周四下午4点执行notify方法
scheduler.add_job(notify, 'cron', day_of_week='thu', hour=16, minute=00, args=[access_token,4,contentWee,tele])
scheduler.start()

二、schedule 代码如下,阻塞流程
 import json,requests,time,schedule,datetime

 #notify方法同一
if __name__ == '__main__':
  schedule.every().thursday.at('16:00').do(notify,access_token,contentWee) # 每周四 16.00执行
  while True:
  schedule.run_pending()
部署:
直接执行 nohup python 文件名 & 建议使用第一种调度方法

python 实现定时任务的更多相关文章

  1. python Aspscheduler 定时任务框架使用

    前几日,爬虫基本能爬点东西出来了,现在需要实现定时把数据爬到DB里去,可以使用windows定时任务执行py脚本,但好像不彻底,要做一个纯(jiao)粹(qing)的程序员,定时任务的重任落到了Asp ...

  2. 用python设置定时任务

    python中的轻量级定时任务调度库:schedule   提到定时任务调度的时候,相信很多人会想到芹菜celery,要么就写个脚本塞到crontab中.不过,一个小的定时脚本,要用celery的话太 ...

  3. python中定时任务

    今天看网络框架时,突然想看一下定时器,于是往上搜索了一下python中timer task的实现,但是由于python本身对线程的支持不是太好,因为全局排它锁的存在,使得多线程在访问资源时效率比较低. ...

  4. python实现定时任务

    定时任务的实现方式有很多种,如windows服务,借助其他定时器jenkins运行脚本等方式.本文介绍的是python中的一个轻量级模块schedule. 安装 pip命令:pip install s ...

  5. Python中定时任务框架APScheduler

    前言 大家应该都知道在编程语言中,定时任务是常用的一种调度形式,在Python中也涌现了非常多的调度模块,本文将简要介绍APScheduler的基本使用方法. 一.APScheduler介绍 APSc ...

  6. Python中定时任务框架APScheduler的快速入门指南

    前言 大家应该都知道在编程语言中,定时任务是常用的一种调度形式,在Python中也涌现了非常多的调度模块,本文将简要介绍APScheduler的基本使用方法. 一.APScheduler介绍 APSc ...

  7. python版 定时任务机制

    定时任务的原理 服务器执行一个python脚本 这个脚本,循环执行配置的定时任务地址 Python请求地址, 该地址应该返回, 下次再来执行的秒数. 也就是任务的频率 比如任务希望每3秒执行一次, 那 ...

  8. python实现定时任务那些你不知道的模块

    一.使用time中的sleep 这种方式最简单,在循环里放入要执行的任务,然后sleep一段时间在执行 from datetime import datetime import time # 每n秒执 ...

  9. python的定时任务模块--schedule

    首先先安装一下模块 下面我们简单的学习一下schedule模块 先简单的看个示例 import schedule def test(*args,**kwargs): print("hello ...

  10. python 学习定时任务apscheduler模块

    最近在解决定时任务问题找到了apscheduler模块,贴一段代码 from apscheduler.schedulers.blocking import BlockingSchedulerimpor ...

随机推荐

  1. 微信小程序中的事件绑定

    前言: 微信小程序中的事件绑定和Vue中的事件绑定其实有很多的相似之处,所以如果有过Vue相关的经验,学起来的话还是比较容易的. js代码: // 页面级的js文件必须调用Page函数来注册页面, / ...

  2. idea设置项目【非springboot项目】热部署

    1.首先打开Edit Configurations 或者 2.添加的项目一定是war: exploded,而不是war 3.server这边,On 'Update' action选Redeploy,O ...

  3. maybatis调用函数和过程的区别

    //定义存储过程create or replace procedure pag_add(p1 varchar2,p2 varchar2,p3 out varchar2) as begin p3:=p1 ...

  4. MapReduce示例式理解

    从word count这个实例理解MapReduce. MapReduce大体上分为六个步骤:input, split, map, shuffle, reduce, output.细节描述如下: 1. ...

  5. RS232标准与TTL/COM小常识

    1.TTL电平标准 输出 L: <0.8V : H:>2.4V. 输入 L: <1.2V : H:>2.0V 2.CMOS电平标准 输出 L: <0.1*Vcc : H: ...

  6. Java字符串定义及常用方法

    String.StringBuffer和StringBuilder   String修饰的是不可变的字符串,而StringBuffer和StringBuilder类的对象是可以被修改的.   Stri ...

  7. [PKUSC2018]主斗地(搜索+贪心)

    首先如果对子和三张牌出现在解中,那么全拆成单张显然没有问题,顺子同理.于是真正有用的牌型就只有单牌.三带一.三带二.四带二了. 暴搜jry手中的牌,然后先搜出双方的大牌型(即三张.四张牌的个数),再枚 ...

  8. 怎样查看python的所有关键字

    关键字是python中具有特定功能的一组词汇, 这些词汇不能用作变量名, 一般会有高亮提示, code时请小心. python的关键字其实也是python的语法核心, 掌握了所有python关键字的用 ...

  9. PHP即时实时输出内容

    一般情况下,PHP都是将整个页面全部执行完成后,才会把要输出的内容发送回客户端. for ($i = 0; $i < 10; $i++) { echo $i; sleep(1); } 这段代码会 ...

  10. Unity_如何判断应用设备内存小于1G(内容可定制为根据机器配置进行不同LOD)

    直接上脚本,需要用的时候在需要的地方调用就好. 如: //获取设别的最大内存,作为判断LOD等级和决定1G以下设备不能进游戏 #if UNITY_ANDROID && !UNITY_E ...