实现定时任务和多线程

import jsonpath
from api.executor_log import ExecutorLogger
import requests
from test.wayne_test2 import login
requests.packages.urllib3.disable_warnings()
from client.env import ENV
requests.packages.urllib3.disable_warnings()
import configparser
log = ExecutorLogger()
s = requests.Session()
import time
from threading import Timer
import timeout_decoratorconfig=configparser.ConfigParser()config.read("rule_core.ini")
@login(event='core', username='wayne@wayne.com', password='Qq1234567!', s=s)
def get_rule(event1):'''实现业务的脚本'''url = ENV.get(event1).get('urls').get('host') + '/api/core/v1/abs/clock/rule?bus=20&loginType=20&clientType=1'res = s.post(url, json={}, verify=False)log.info(F'获取规则成功--》{res.json()}')# 获取时间戳data = time.time()# 转换成localtime time_local = time.localtime(data)dt = time.strftime("%Y-%m-%d %H:%M:%S", time_local)config.add_section(F'{dt}')config.set(F'{dt}',"rule", F'{res.json()}')config.write(open("rule_core.ini", "w"))print(res.json())return res.json()# @timeout_decorator.timeout(3600)   # 此方法为超过多少ms停止
def loop_func(func, second):'''实现定时任务的脚本'''# 每隔second秒执行func函数  sencond对应时间while True:if time.time() < 1642644003:timer = Timer(60, func)timer.start()timer.join()else:log.info('流程结束')breaktry:loop_func(get_rule, 1)
except Exception as e:print('超时未获取到数据', e)# 加raise 会把异常信息捕获到e  并且raise出来raise Exception(F'{e}')

python定时任务轮询相关推荐

  1. 定时任务轮询报错:Cannot find class [org.springframework.scheduling.quartz.CronTriggerBean]

    刚接触quartz,参考网上资料写了一个定时触发问询更新数据库的代码,在配置的地方出了问题,因为之前参考的博客比较老了, quartz 的版本在1.8.6以下,所以依赖的类是CronTriggerBe ...

  2. python 定时器 ms_python 定时器,轮询定时器的示例

    python 定时器默认定时器只执行一次,第一个参数单位S,几秒后执行 import threading def fun_timer(): print('Hello Timer!') timer = ...

  3. python控制led屏_python轮询机制控制led实例

    我就废话不多说了,大家还是直接看代码吧! # -*- coding:utf-8 -*- # File: ceshitianqi import urllib2 import json import ti ...

  4. apache虚拟主机、日志轮询、日志统计、去版本优化

    一.虚拟主机 1.基于域名的虚拟主机 www.zhang.com   /var/html/www blog.zhang.com  /var/html/blog bbs.zhang.com   /var ...

  5. ajax长轮询tornado,Tornado长轮询和WebSocket

    Http协议是一种请求响应式协议, 不允许服务端主动向客户端发送信息. 短轮询是一种简单的实现服务端推送消息的解决方案, 客户端以一定间隔自动向服务端发送刷新请求, 服务端返回要推送的消息作为响应. ...

  6. linux脚本能轮循吗,通过Linux定时任务实现定时轮询数据库及发送Http请求

    #通过Linux定时任务实现定时轮询数据库及发送Http请求 概述 有时需要临时增加一个定时任务(需要根据数据库查询结果然后发送HTTP请求),如果在项目中额外增加(Java+Spring+Quart ...

  7. redis实现轮询算法_Dcron:基于redis与一致性哈希算法的分布式定时任务库

    背景 最近项目中的定时任务越来越多,为了防止任务重复执行曾经使用过的方案: 只启用了一个节点. 固定循环间隔,使用分布式事务锁. 部署一套分布式任务调度系统. 方案一 没有容错机制,当单个节点宕机,所 ...

  8. python 优雅退出_Python学习教程:Python 使用 backoff 更优雅的实现轮询

    我们经常在开发中会遇到这样一种场景,即轮循操作.今天介绍一个Python库,用于更方便的达到轮循的效果--backoff. Python学习教程:Python 使用 backoff 更优雅的实现轮询 ...

  9. Python 负载均衡,数据轮询 hash字符串 hashlib

    在做数据分发轮询的时候遇到一个问题,我们并不只是想把数据依次分发到每台机器上,而是想根据每条数据的id来判断,同一个id的数据只放到同一个机器上,而不是可能随机出现在任何一台机器上. 1.使用pyth ...

最新文章

  1. [ios2] ios使用自带git respository管理项目 【转】
  2. 机械设计电子版_非标机械设计有哪些设计过程??
  3. 14. 深入解析Pod对象(一)
  4. Spring下Redis的响应式编程
  5. 《Windows via C/C++》学习笔记 —— 用户模式的“线程同步”之“条件变量”
  6. Java的结构之美【2】——销毁对象
  7. 海外金融巨头启示:站在SSC肩上,探索恒生电子下一征程(深度)| 国君计算机
  8. PS CC 2014破解版
  9. 解决Word文档被锁,无法复制的问题
  10. Linux C编程(五) 之 gdb详解
  11. 我的偶像王坚博士,一位执着的学者!
  12. Markdown 书写规范
  13. Android GoogleMap接入
  14. 回车换行符 crlf 那点事
  15. 洛谷CF499B Lecture + 映射map
  16. 系统集成项目管理工程师试题(2022年11月全国卷)
  17. Freemarker(一)简介
  18. 从零到十亿,创业企业家如何迈向成功?
  19. 海康威视rtsp取流和回放
  20. PMCAFF外包大师长期招募兼职团队和个人

热门文章

  1. g++/gcc编译过程中遇到的问题
  2. 如果你是O型血的准妈妈,新生儿溶血症一定要提前了解,有备无患
  3. cls意义 matlab,诠释各自对优雅的理解 奔驰CLS对比奥迪A7
  4. 定题信息服务是从什么角度_语文答题模式和角度
  5. Git 基础知识 - 获取 Git 存储库
  6. 订单列表三种状态切换时请求数据
  7. HTML5 ------ image和列表
  8. 我的硬汉观——《丧钟为谁而鸣》读书感悟
  9. iOS10适配 完美解决相机、相册等权限的使用
  10. Ubuntu16安装向日葵远程控制软件