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删除指定目录下过期文件的2个脚本分享
Apr 10 Python
Python同时向控制台和文件输出日志logging的方法
May 26 Python
浅析Python中的多条件排序实现
Jun 07 Python
python连接mysql实例分享
Oct 09 Python
对Python中DataFrame按照行遍历的方法
Apr 08 Python
python Pexpect 实现输密码 scp 拷贝的方法
Jan 03 Python
Python使用ffmpy将amr格式的音频转化为mp3格式的例子
Aug 08 Python
python圣诞树编写实例详解
Feb 13 Python
python时间序列数据转为timestamp格式的方法
Aug 03 Python
如何使用 Python 读取文件和照片的创建日期
Sep 05 Python
Python实现敏感词过滤的4种方法
Sep 12 Python
python人工智能human learn绘图可创建机器学习模型
Nov 23 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
xajax写的留言本
2006/11/25 PHP
php session 检测和注销
2009/03/16 PHP
PHP学习之字符串比较和查找
2011/04/17 PHP
一个简单的网页密码登陆php代码
2012/07/17 PHP
基于thinkPHP框架实现留言板的方法
2016/10/17 PHP
php中static和const关键字用法分析
2016/12/07 PHP
Yii2压缩PHP中模板代码的输出问题
2018/08/28 PHP
jquery动态加载图片数据练习代码
2011/08/04 Javascript
javascript实现复选框选中属性
2015/03/25 Javascript
JQuery boxy插件在IE中边角图片不显示问题的解决
2015/05/20 Javascript
js实现页面跳转的五种方法推荐
2016/03/10 Javascript
Bootstrapvalidator校验、校验清除重置的实现代码(推荐)
2016/09/28 Javascript
JS实现的添加弹出层并完成锁屏操作示例
2017/04/07 Javascript
详解在React.js中使用PureComponent的重要性和使用方式
2018/07/10 Javascript
node.js学习笔记之koa框架和简单爬虫练习
2018/12/13 Javascript
[01:08:43]DOTA2-DPC中国联赛定级赛 Phoenix vs DLG BO3第一场 1月9日
2021/03/11 DOTA
在IIS服务器上以CGI方式运行Python脚本的教程
2015/04/25 Python
Python实现动态图解析、合成与倒放
2018/01/18 Python
tensorflow学习教程之文本分类详析
2018/08/07 Python
从DataFrame中提取出Series或DataFrame对象的方法
2018/11/10 Python
用xpath获取指定标签下的所有text的实例
2019/01/02 Python
安装docker-compose的两种最简方法
2019/07/30 Python
Python实现手机号自动判断男女性别(实例解析)
2019/12/22 Python
python中前缀运算符 *和 **的用法示例详解
2020/05/28 Python
Python 在 VSCode 中使用 IPython Kernel 的方法详解
2020/09/05 Python
英国最大的在线快递公司之一:ParcelHero
2019/11/04 全球购物
什么是组件架构
2016/05/15 面试题
音乐专业自荐信
2014/02/07 职场文书
业务部门经理岗位职责
2014/02/23 职场文书
汽车专业求职信
2014/06/05 职场文书
2014年社区宣传工作总结
2014/12/02 职场文书
《雷雨》教学反思
2016/02/20 职场文书
职业规划从高考志愿专业选择开始
2019/08/08 职场文书
导游词之徐州-云龙山
2019/09/29 职场文书
Python 文本滚动播放器的实现代码
2021/04/25 Python
如何基于python实现单目三维重建详解
2022/06/25 Python