多任务 schedule python_Python3.6 Schedule 模块定时任务 (实例讲解)

Python3.6 Schedule 模块定时任务 (实例讲解)

Python 是一种面向对象解释型计算机程序设计语言, 由 Guido van Rossum 于 1989 年底发明, 第一个公开发行版发行于 1991 年 Python 语法简洁而清晰, 具有丰富和强大的类库它常被昵称为胶水语言, 它能够把用其他语言制作的各种模块 (尤其是 C/C++) 很轻松地联结在一起

下面小编就为大家带来一篇 Python3.6 Schedule 模块定时任务 (实例讲解) 小编觉得挺不错的, 现在就分享给大家, 也给大家做个参考一起跟随小编过来看看吧

一, 编程环境

PyCharm2016,Anaconda3 Python3.6

需要安装 schedule 模块, 该模块网址: https://pypi.python.org/pypi/schedule

打开 Anaconda Prompt, 输入: conda install schedule 提示: Package Not Found Error

于是, 使用 pip 安装由于 Anaconda3 中已经自带了 pip, 如下图:

ab7653affab982b574eb7acc55df2e04.gif

于是 cmd 命令行切换到 scripts 目录, 执行 pip.exe install schedule 安装成功这样就可以在 PyCharm 里面 import schedule 了

二, 在每天某个指定的时间点上, 从数据库中查找数据然后写入 csv 文件

使用 sqlalchemy 模块来建立数据库连接, 关于 windows 下 python3.6 for mysql 驱动安装, 可参考: windows10 下使用 Pycharm2016 基于 Anaconda3 Python3.6 安装 Mysql 驱动总结

使用 schedule 模块来执行周期性任务关于该模块的用法, 可参考官网示例

使用 csv 模块将查询到的记录写入文件

整个完整代码如下:importschedule

importcodecs

importcsv

importtime

fromsqlalchemyimportcreate_engine

defget_conn():

engine=create_engine("mysql+pymysql://root:password@localhost:3306/test?charset=utf8mb4")

conn=engine.connect()

returnconn

defquery():

sql="select * from user limit 10"

conn=get_conn()

returnconn.execute(sql)

defread_mysql_to_csv(filename):

withcodecs.open(filename=filename,mode='w')asf:

write=csv.writer(f,dialect='excel')

results=query()

forresultinresults:

write.writerow(result)

schedule.every().day.at("17:49").do(read_mysql_to_csv,"test")

whileTrue:

schedule.run_pending()

time.sleep(10)

三, 总结

schedule 模块可以非常方便地实现: 周期性地在每天的某个时间点上执行任务其官方示例如下:importschedule

importtime

defjob():

print("I'm working...")

schedule.every(10).minutes.do(job)

schedule.every().hour.do(job)

schedule.every().day.at("10:30").do(job)

schedule.every().monday.do(job)

schedule.every().wednesday.at("13:15").do(job)

whileTrue:

schedule.run_pending()

time.sleep(1)

来源: http://www.phperz.com/article/18/0222/360925.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/376105.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

UVa 11468 (AC自动机 概率DP) Substring

将K个模板串构成一个AC自动机&#xff0c;那些能匹配到的单词节点都称之为禁止节点。 然后问题就变成了在Tire树上走L步且不经过禁止节点的概率。 根据全概率公式用记忆化搜索求解。 1 #include <cstdio>2 #include <cstring>3 #include <queue>4 using name…

mysql 检查点_my05_mysql检查点简述

简单描述一下mysql 检查点&#xff0c;对mysql数据库恢复的理解有所帮助。数据库版本mysql> selectversion();-----------| version() |-----------| 8.0.11 |-----------1 row in set (0.00 sec)检查点查看mysql>show engine innodb status\G;---LOG---Log sequence num…

VS2010无法执行自动化测试解决方案

在实际的工作过程中&#xff0c;当你发现你的VS2010无法执行自动化测试用例&#xff0c;刚好你发现你的电脑安装有VS2012&#xff0c;那么好了&#xff0c;请卸载你的VS2012再试试...转载于:https://www.cnblogs.com/captainR/p/3566751.html

停止Hadoop或HBase集群的脚本

#!/bin/sh #echo "waring" #read NAME #等待用户输入并把输入的值付给NAME NAME$1 #将脚本第一个参数赋给NAME #引用变量时加上"{}",是个好习惯,利于shell辨别变量边界 if [ -z ${NAME} ] ; then #执行脚本没有输入参数,默认关闭hadoopstop-all.sh elif [ …

css 伪元素分享!!!

最近接触到的css 伪元素觉得还算不错 分享下&#xff1a; 1、清楚内盒浮动设置&#xff1a; .back_list ul{padding:12px 0 0 12px;zoom:1;} .back_list ul:after{clear: both;content: ".";display: block;height: 0;visibility: hidden;}/*清楚内盒浮动设置*/ 2、伪…

公钥和私钥 java_公钥与私钥 - yxhxj2006 - BlogJava

评论# re: 公钥与私钥 [未登录]2014-01-08 17:43workeruseful for me 回复 更多评论# re: 公钥与私钥2014-04-18 11:05Eva特别棒&#xff01; 谢谢&#xff01;worker回复 更多评论# re: 公钥与私钥 [未登录]2014-06-11 17:10mike# re: 公钥与私钥2014-11-10 17:05游客太有用…

zepto学习之路--源代码提取

最近在看zepto的源代码&#xff0c;把一些有用的函数摘出来&#xff0c;看看zepto是怎么实现的&#xff0c;自己做的时候也可以用。说实话&#xff0c;zepto的实现有一些看起来还是很晦涩的&#xff0c;可能是自己的水平不够&#xff0c;看不透作者的真正的意图。 1、zepto的正…

java byte 整数_java整数与byte数组的转换实现代码

java整数与byte数组的转换实现代码这里对java中整数与byte数组的转换进行了实现&#xff0c;平时的项目中很少用的到&#xff0c;但是特定需求的时候还是需要的&#xff0c;这里就记录下&#xff0c;亲测可用&#xff0c;实现代码&#xff1a;public class NumberUtil {/*** in…

蓝桥杯 花朵数

一个N位的十进制正整数&#xff0c;如果它的每个位上的数字的N次方的和等于这个数本身&#xff0c;则称其为花朵数。 例如&#xff1a; 当N3时&#xff0c;153就满足条件&#xff0c;因为 1^3 5^3 3^3 153&#xff0c;这样的数字也被称为水仙花数&#xff08;其中&#xff0…

windows 2003添加删除windows组件中无iis应用程序服务器项的解决方法

解决方法如下: 1.开始 -- 运行,输入 c:\Windows\inf\sysoc.inf,会打开这个文件;在sysoc.inf中找到"[Components]"这一段,并继续找到类 似"iisiis.dll,OcEntry,iis.inf,hide,7" 的一行字,把这一行替换为"iisiis.dll,OcEntry,iis.inf,,7"。如果已经…

java打印菱形代码_Java打印菱形高效简洁代码

importjava.util.Scanner;publicclass打印菱形{publicstaticvoidmain(String[]args){/**菱形**************************/ScannerinputScannernewScanner(System.in);System.out.prin...import java.util.Scanner;public class 打印菱形 {public static void main(String[] arg…

QT mainwindow四件套

最近在学习QT。下面总结一下mainwindow的设置步骤。 使用的平台为vs2013qt5.3.2qt-vs-addin1.2.3 1)安装软件 首先安装vs2013&#xff0c;这个不多介绍。 然后安装qt5.3.2和addin1.2.3。并设置相关环境。详细见http://tieba.baidu.com/p/3451630520?pid61264366864#6126436686…

go mysql recover_golang用panic和recover做业务流程中断的尝试

随着使用golang越来越频繁&#xff0c;发现golang有一个地方非常不方便&#xff0c;就是在错误处理方面。先来看看golang中通常的错误处理方法&#xff1a;通常的error处理package mainimport ("errors""fmt")func a() (err error) {err errors.New("…

ROC曲线【转】

ROC曲线&#xff08;Receiver Operating Characteeristic Curve&#xff09;是显示Classification模型真正率和假正率之间折中的一种图形化方法 解读ROC图的一些概念定义&#xff1a; 真正&#xff08;True Positive , TP&#xff09;被模型预测为正的正样本 假负&#xff08;F…

更改密码 sp_password

sp_password添加或更改 Microsoft SQL Server™ 登录的密码。语法sp_password[ [ old ] old_password , ]{ [new ] new_password }[, [ loginame ] login ]参数[old] old_password是旧密码。old_password为 sysname 类型&#xff0c;其默认值为 NULL。[new] new_password是新…

java eclipse oxygen_Eclipse Java Oxygen配置Tomcat

eclipse oxygen 配置tomcat 9.0第一步 装上eclipse的EE插件因为我以前学习java都是用eclipse oxygen的se版本&#xff0c;所以并不支持j2EE&#xff0c;所以第一步&#xff0c;就是要先把它升级为EE版本。有两种方法供我们选择。重新安装eclipse的EE版本。安装eclipse的EE插件。…

五大常用算法之二:动态规划算法

一、基本概念 动态规划过程是&#xff1a;每次决策依赖于当前状态&#xff0c;又随即引起状态的转移。一个决策序列就是在变化的状态中产生出来的&#xff0c;所以&#xff0c;这种多阶段最优化决策解决问题的过程就称为动态规划。 二、基本思想与策略 基本思想与分治法类似&am…

java 数组处理_JAVA操作数组

使用 Arrays 类操作 Java 中的数组Arrays 类是 Java 中提供的一个工具类&#xff0c;在 java.util 包中。该类中包含了一些方法用来直接操作数组&#xff0c;比如可直接实现数组的排序、搜索等Arrays 中常用的方法&#xff1a;1、 排序语法&#xff1a; Arrays.sort(数组名);可…

VB调用VC DLL函数

—————————————————————————VC部分—————————————————————————————————————声明 ******************************************************************************************************** extern "C&q…

java拆装_JAVA线性表拆解

线性表(List)是一种线性结构。其特点是数据元素直线的线性关系。1.线性表抽象类定义public abstract class AbsList implements Iterable&#xff0c;List{protected int length;abstract public T get(int i); //返回第i(i≥0)个元素abstract public boolean set(int i, T x);…