python如何每天在指定时间段运行程序及关闭程序
作者:Lee-Oct 发布时间:2021-08-05 05:42:05
标签:python,时间,运行程序,关闭程序
python每天在指定时间段运行程序及关闭程序
场景
程序需要在每天某一时间段内运行,然后在某一时间段内停止该程序。
程序:
from datetime import datetime, time
import multiprocessing
from time import sleep
# 程序运行时间在白天8:30 到 15:30 晚上20:30 到 凌晨 2:30
DAY_START = time(8, 30)
DAY_END = time(15, 30)
NIGHT_START = time(20, 30)
NIGHT_END = time(2, 30)
def run_child():
while 1:
print("正在运行子进程")
def run_parent():
print("启动父进程")
child_process = None # 是否存在子进程
while True:
current_time = datetime.now().time()
running = False # 子进程是否可运行
if DAY_START <= current_time <= DAY_END or (current_time >= NIGHT_START) or (current_time <= NIGHT_END):
# 判断时候在可运行时间内
running = True
# 在时间段内则开启子进程
if running and child_process is None:
print("启动子进程")
child_process = multiprocessing.Process(target=run_child)
child_process.start()
print("子进程启动成功")
# 非记录时间则退出子进程
if not running and child_process is not None:
print("关闭子进程")
child_process.terminate()
child_process.join()
child_process = None
print("子进程关闭成功")
sleep(5)
if __name__ == '__main__':
run_parent()
python定时程序(每隔一段时间执行指定函数)
import os
import time
def print_ts(message):
print "[%s] %s"%(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()), message)
def run(interval, command):
print_ts("-"*100)
print_ts("Command %s"%command)
print_ts("Starting every %s seconds."%interval)
print_ts("-"*100)
while True:
try:
# sleep for the remaining seconds of interval
time_remaining = interval-time.time()%interval
print_ts("Sleeping until %s (%s seconds)..."%((time.ctime(time.time()+time_remaining)), time_remaining))
time.sleep(time_remaining)
print_ts("Starting command.")
# execute the command
status = os.system(command)
print_ts("-"*100)
print_ts("Command status = %s."%status)
except Exception, e:
print e
if __name__=="__main__":
interval = 5
command = r"ls"
run(interval, command)
来源:https://blog.csdn.net/weixin_35737303/article/details/99561792


猜你喜欢
- 前言:Python可以引入指定路径的文件,原理就是使用sys.path.append加入到程序查找的路径。实验目的:调用不同目录的类和接口,
- 我的机器不知为何,安装MySQL的时候,一到配置那一步就无休止的等待,只好结束任务,然而启动MySQL的时候出现1067错误提示
- 废话不多说,大家还是直接看代码吧!import pandas as pdfrom matplotlib import pyplot as p
- 一、函数基础简单地说,一个函数就是一组Python语句的组合,它们可以在程序中运行一次或多次运行。Python中的函数在其他语言中也叫做过程
- 冒泡排序冒泡排序(英语:Bubble Sort)是一种简单的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们
- 本文实例为大家分享了python创建单词词库的具体代码,供大家参考,具体内容如下基本思路:以COCA两万单词表为基础,用python爬取金山
- 一、背景近期项目即将开展,计划第一步就是实现数据的可视化,所以先学习一下数据展示相关Demo。选用Python2.7与Matplotlib来
- 1. 将数据库生成使用对象资源管理器能快速创建整个数据的脚本,也能使用默认选项创建单个数据库对象的脚本;用户能在查询编辑器窗口中对文件或剪贴
- 1、变量的定义定义变量语法格式:variable_name = variable_namevariable_name表示变量名;variab
- 这里介绍几个常用的列表操作添加元素添加元素使用列表的内置方法appendnumber = [1, 2, 3, 4]number.append
- python提取照片坐标信息的代码如下所示:from PIL import Imagefrom PIL.ExifTags import TA
- 前言pycharm可以很方便的管理Python的解释器(如果安装了多个的话),以及第三方模块,包。Pycharm是很多Python开发者的首
- 本文实例讲述了Python实现的桶排序算法。分享给大家供大家参考,具体如下:桶排序也叫计数排序,简单来说,就是将数据集里面所有元素按顺序列举
- 1.建立Recordset对象Dim objMyRstSet objMyRst=Server.CreateObject(&ldquo
- 在使用的django做测试平台时,,多多少少都会遇到需要定时任务的功能,比如定时执行任务,检查订单之类的。可能是一段时间,比如每隔 10分钟
- 前言每一个好习惯都是一笔财富,本文分 SQL 后悔药,SQL 性能优化,SQL 规范优雅三个方向,分享写 SQL 的 21 个好习惯和最佳实
- 本文实例为大家分享了Python读写Excel表格的具体代码,供大家参考,具体内容如下python读取Excel表格:import xlrd
- 参数数量及其作用该函数共有十一个参数,常用的有:名称 name变量规格 shape变量类型 dtype变量初始化方式 initializer
- go build 报错:main.go:5:2: cannot find package “gopkg.in/go-playground/v
- 本文实例为大家分享了python实现简单颜色识别程序的具体代码,供大家参考,具体内容如下import numpy as npimport c