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


Posted in Python onNovember 09, 2017

一,编程环境

PyCharm2016,Anaconda3 Python3.6

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

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

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

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

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

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

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

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

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

整个完整代码如下:

import schedule
import codecs
import csv
import time
from sqlalchemy import create_engine

def get_conn():
 engine = create_engine("mysql+pymysql://root:password@localhost:3306/test?charset=utf8mb4")
 conn = engine.connect()
 return conn

def query():
 sql = "select * from user limit 10"
 conn = get_conn()
 return conn.execute(sql)

def read_mysql_to_csv(filename):
 with codecs.open(filename=filename, mode='w') as f:
  write = csv.writer(f, dialect='excel')

  results = query()
  for result in results:
   write.writerow(result)

schedule.every().day.at("17:49").do(read_mysql_to_csv, "test")
while True:
 schedule.run_pending()
 time.sleep(10)

三,总结

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

import schedule
import time

def job():
 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)

while True:
 schedule.run_pending()
 time.sleep(1)

以上这篇Python3.6 Schedule模块定时任务(实例讲解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python爬取国外天气预报网站的方法
Jul 10 Python
Python urls.py的三种配置写法实例详解
Apr 28 Python
python图书管理系统
Apr 05 Python
Python实现购物车程序
Apr 16 Python
Python3.x爬虫下载网页图片的实例讲解
May 22 Python
python实现自动网页截图并裁剪图片
Jul 30 Python
解决sublime+python3无法输出中文的问题
Dec 12 Python
numpy 返回函数的上三角矩阵实例
Nov 25 Python
使用Python和百度语音识别生成视频字幕的实现
Apr 09 Python
VS2019+python3.7+opencv4.1+tensorflow1.13配置详解
Apr 16 Python
python开发入门——列表生成式
Sep 03 Python
LeetCode189轮转数组python示例
Aug 05 Python
Python中scatter函数参数及用法详解
Nov 08 #Python
python实现人脸识别代码
Nov 08 #Python
python生成随机图形验证码详解
Nov 08 #Python
Python爬虫实例爬取网站搞笑段子
Nov 08 #Python
python执行使用shell命令方法分享
Nov 08 #Python
python通过socket实现多个连接并实现ssh功能详解
Nov 08 #Python
Python基础练习之用户登录实现代码分享
Nov 08 #Python
You might like
DC这些乐高系列动画电影你看过几部?
2020/04/09 欧美动漫
防止MySQL注入或HTML表单滥用的PHP程序
2009/01/21 PHP
sphinx增量索引的一个问题
2011/06/14 PHP
解析ajax事件的调用顺序
2013/06/17 PHP
IIS6.0中配置php服务全过程解析
2013/08/07 PHP
非常好用的Zend Framework分页类
2014/06/25 PHP
Dreamweaver jQuery智能提示插件,支持版本提示,支持1.6api
2011/07/31 Javascript
Javascript的严格模式strict mode详细介绍
2014/06/06 Javascript
PHP结合jQuery实现的评论顶、踩功能
2015/07/22 Javascript
bootstrap table实现单击单元格可编辑功能
2017/03/28 Javascript
jQuery使用bind函数实现绑定多个事件的方法
2017/10/11 jQuery
jQuery实现表格隔行换色
2018/09/01 jQuery
图文讲解vue的v-if使用方法
2019/02/11 Javascript
微信小程序如何访问公众号文章
2019/07/08 Javascript
如何配置vue.config.js 处理static文件夹下的静态文件
2020/06/19 Javascript
python利用hook技术破解https的实例代码
2013/03/25 Python
在Django框架中编写Contact表单的教程
2015/07/17 Python
利用Python获取赶集网招聘信息前篇
2016/04/18 Python
Python数据结构与算法之完全树与最小堆实例
2017/12/13 Python
使用python编写简单的小程序编译成exe跑在win10上
2018/01/15 Python
Python cookbook(字符串与文本)针对任意多的分隔符拆分字符串操作示例
2018/04/19 Python
Python处理中文标点符号大集合
2018/05/14 Python
用Python+OpenCV对比图像质量的几种方法
2019/07/15 Python
np.dot()函数的用法详解
2020/01/17 Python
css3实现波纹特效、H5实现动态波浪效果
2018/01/31 HTML / CSS
戛纳奢侈品商店:Jacques Loup法国
2019/11/04 全球购物
The Outnet亚太地区:折扣设计师时装店
2019/12/05 全球购物
Carmen Sol官网:购买果冻鞋、手袋和配件
2021/01/01 全球购物
opencv实现图像几何变换
2021/03/24 Python
大学生毕业求职简历的自我评价
2013/10/24 职场文书
医院护士专业个人的求职信
2013/12/09 职场文书
幼儿园教师节活动方案
2014/02/02 职场文书
小学语文教学经验交流材料
2014/06/02 职场文书
二审答辩状格式
2015/05/22 职场文书
教你怎么用Python处理excel实现自动化办公
2021/04/30 Python
解决Jenkins集成SonarQube遇到的报错问题
2021/07/15 Java/Android