python 定时器每天就执行一次的实现代码


Posted in Python onAugust 14, 2019

1.实现功能

编写python脚本一直运行,判断当下是否是新的一天,如果是就执行一次任务代码

2.具体实现代码

#-*-coding:utf-8 -*-
__author__ = 'Administrator'
import os,threading,time
curTime=time.strftime("%Y-%M-%D",time.localtime())#记录当前时间
execF=False
ncount=0
def execTask():
  #具体任务执行内容
  print("execTask executed!")
def timerTask():
  global execF
  global curTime
  global ncount
  if execF is False:
    execTask()#判断任务是否执行过,没有执行就执行
    execF=True
  else:#任务执行过,判断时间是否新的一天。如果是就执行任务
    desTime=time.strftime("%Y-%M-%D",time.localtime())
    if desTime > curTime:
      execF = False#任务执行执行置值为
      curTime=desTime
  ncount = ncount+1
  timer = threading.Timer(5,timerTask)
  timer.start()
  print("定时器执行%d次"%(ncount))
if __name__=="__main__":
  timer = threading.Timer(5,timerTask)
  timer.start()

使用Python 执行具体任务执行

知识点扩展:

Python: 定时器(Timer)简单实现

项目分析中发现有网站下载过程中需要发送心跳指令,复习下定时器,其与javascript中实现方法类似。

其原理为执行函数中置定时函数Timer(),递归调用自己,看来实现方法比较拙劣。

假定1秒触发一次,并置结束条件为15秒:

import threading
import time
exec_count = 0
def heart_beat():
  print time.strftime('%Y-%m-%d %H:%M:%S')
  global exec_count
  exec_count += 1
  # 15秒后停止定时器
  if exec_count < 15:
    threading.Timer(1, heart_beat).start()
heart_beat()

另一种判断方式:

import threading
import time
cancel_tmr = False
def heart_beat():
  print time.strftime('%Y-%m-%d %H:%M:%S')
  if not cancel_tmr:
    threading.Timer(1, heart_beat).start()
heart_beat()
# 15秒后停止定时器
time.sleep(15) 
cancel_tmr = True

总结

以上所述是小编给大家介绍的python 定时器每天就执行一次的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
Python编码时应该注意的几个情况
Mar 04 Python
tornado框架blog模块分析与使用
Nov 21 Python
Eclipse和PyDev搭建完美Python开发环境教程(Windows篇)
Nov 16 Python
解决uWSGI的编码问题详解
Mar 24 Python
Python解决走迷宫问题算法示例
Jul 27 Python
python简易实现任意位数的水仙花实例
Nov 13 Python
Python 中 function(#) (X)格式 和 (#)在Python3.*中的注意事项
Nov 30 Python
python使用selenium实现批量文件下载
Mar 11 Python
Django模板Templates使用方法详解
Jul 19 Python
python3 dict ndarray 存成json,并保留原数据精度的实例
Dec 06 Python
Flask框架搭建虚拟环境的步骤分析
Dec 21 Python
opencv python Canny边缘提取实现过程解析
Feb 03 Python
Django 项目重命名的实现步骤解析
Aug 14 #Python
Django如何实现网站注册用户邮箱验证功能
Aug 14 #Python
python 叠加等边三角形的绘制的实现
Aug 14 #Python
Django为窗体加上防机器人的验证码功能过程解析
Aug 14 #Python
Python 利用高德地图api实现经纬度与地址的批量转换
Aug 14 #Python
Django如何使用第三方服务发送电子邮件
Aug 14 #Python
Python3 chardet模块查看编码格式的例子
Aug 14 #Python
You might like
PHP缓存技术的使用说明
2011/08/06 PHP
PHP 对象接口简单实现方法示例
2020/04/13 PHP
javascript 类定义的4种方法
2009/09/12 Javascript
判断用户的在线状态 onbeforeunload事件
2011/03/05 Javascript
理解JavaScript的prototype属性
2012/02/11 Javascript
jQuery简单实现遍历数组的方法
2015/04/14 Javascript
JavaScript中的getMilliseconds()方法使用详解
2015/06/10 Javascript
AngularJS中的过滤器filter用法完全解析
2016/04/22 Javascript
ionic实现滑动的三种方式
2016/08/27 Javascript
AngularJS ng-style中使用filter
2016/09/21 Javascript
JavaScript三种绑定事件方式及相互之间的区别分析
2017/01/10 Javascript
JS高仿抛物线加入购物车特效实现代码
2017/02/20 Javascript
js es6系列教程 - 新的类语法实战选项卡(详解)
2017/09/02 Javascript
vue踩坑记录之数组定义和赋值问题
2019/03/20 Javascript
简单了解微信小程序 e.target与e.currentTarget的不同
2019/09/27 Javascript
python抓取网页图片并放到指定文件夹
2014/04/24 Python
详解Python中的装饰器、闭包和functools的教程
2015/04/02 Python
Python实现读写INI配置文件的方法示例
2018/06/09 Python
python 将list转成字符串,中间用符号分隔的方法
2018/10/23 Python
python 求一个列表中所有元素的乘积实例
2019/06/11 Python
Python列表元素常见操作简单示例
2019/10/25 Python
使用Bazel编译TensorBoard教程
2020/02/15 Python
python实现信号时域统计特征提取代码
2020/02/26 Python
Python实现Canny及Hough算法代码实例解析
2020/08/06 Python
一款纯css3制作的2015年元旦雪人动画特效教程
2014/12/29 HTML / CSS
UGG雪地靴荷兰官网:UGG荷兰
2016/09/09 全球购物
生产厂厂长岗位职责
2013/12/25 职场文书
母校寄语大全
2014/04/10 职场文书
委托协议书范本
2014/04/22 职场文书
专题组织生活会发言材料
2014/10/17 职场文书
2015年元旦文艺晚会总结(学院)
2014/11/28 职场文书
运动会表扬稿范文
2015/05/05 职场文书
电影开国大典观后感
2015/06/04 职场文书
如何利用python和DOS获取wifi密码
2021/03/31 Python
Python数据清洗工具之Numpy的基本操作
2021/04/22 Python
深入解析Apache Hudi内核文件标记机制
2022/03/31 Servers