Python while true实现爬虫定时任务


Posted in Python onJune 08, 2020

记得以前的windows 任务定时是可以的正常使用的,今天试了下,发现不能正常使用了,任务计划总是挂起。

接下来记录下python 爬虫定时任务的几种解决方法。

今天是第一篇,后面会陆续更新。

首先最容易的是while true死循环挂起,上代码

import osimport timeimport sysfrom datetime import datetime, timedelta
def One_Plan():
   # 设置启动周期
   Second_update_time = 24 * 60 * 60
   
  # 当前时间
  now_Time = datetime.now()
  # 设置 任务启动时间
  plan_Time = now_Time.replace(hour=9, minute=0, second=0, microsecond=0) 
  # 设置差值,-1 day, 21:48:53.246576,类似于这样
  # time.sleep()需要传入int,所以下面使用.total_seconds() 
  # 主要用来计算差值,返回int,具体功能可以自行查阅相关资料
  delta = plan_Time - now_Time
  first_plan_Time = delta.total_seconds() % Second_update_time
  print("距离第一次执行需要睡眠%d秒" % first_plan_Time)
  return first_plan_Time

# while Ture代码块,挂起程序,睡眠时间结束后调用函数名进行执行
while True:

  s1 = One_Plan()
  time.sleep(s1)
  # 下面这里是自己定义的函数,想跑代码的可以换成hellow world函数或者注释掉这行测试下
  exe_file(D_list)
  print("正在执行首次更新程序")

个人感觉使用这种方式进行定时计划的启动如果为单个程序,并且一天执行一次的话没什么问题,如果要考虑到一天执行多个任务并且一天需要执行多次,短板一下就凸显出来了,

在工作的情况中还需要考虑到很多因素,比如爬虫程序需要在晚上12点和早上6点,9点,下午3点执行四次,并且需要同时执行4个爬虫,还需要考虑到网络是否稳定,如果程序挂掉该怎么处理等等因素

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python Web框架Pylons中使用MongoDB的例子
Dec 03 Python
Python实现多线程下载文件的代码实例
Jun 01 Python
在Python中使用Mako模版库的简单教程
Apr 08 Python
Linux中安装Python的交互式解释器IPython的教程
Jun 13 Python
完美解决python遍历删除字典里值为空的元素报错问题
Sep 11 Python
Python之csv文件从MySQL数据库导入导出的方法
Jun 21 Python
Python理解递归的方法总结
Jan 28 Python
Python 根据数据模板创建shapefile的实现
Nov 26 Python
浅析python,PyCharm,Anaconda三者之间的关系
Nov 27 Python
什么是Python变量作用域
Jun 03 Python
Python脚本如何在bilibili中查找弹幕发送者
Jun 04 Python
python使用matplotlib绘制图片时x轴的刻度处理
Aug 30 Python
python 实现rolling和apply函数的向下取值操作
Jun 08 #Python
基于python计算滚动方差(标准差)talib和pd.rolling函数差异详解
Jun 08 #Python
Python实现查找数据库最接近的数据
Jun 08 #Python
python numpy库np.percentile用法说明
Jun 08 #Python
python thrift 实现 单端口多服务的过程
Jun 08 #Python
Python astype(np.float)函数使用方法解析
Jun 08 #Python
python opencv 实现读取、显示、写入图像的方法
Jun 08 #Python
You might like
php print EOF实现方法
2009/05/21 PHP
PHP学习散记_编码(json_encode 中文不显示)
2011/11/10 PHP
如何使用FireFox插件FirePHP调试PHP
2013/07/23 PHP
PHP防止表单重复提交的几种常用方法汇总
2014/08/19 PHP
php实现图片上传时添加文字和图片水印技巧
2020/04/18 PHP
PHP实现bitmap位图排序与求交集的方法
2016/07/28 PHP
深入分析js中的constructor和prototype
2012/04/07 Javascript
Javascript实现单张图片浏览
2014/12/18 Javascript
javaScript的函数对象的声明详解
2015/02/06 Javascript
jquery中ready()函数执行的时机和window的load事件比较
2015/06/22 Javascript
移动端触摸滑动插件swiper使用方法详解
2017/08/11 Javascript
Vue+Element使用富文本编辑器的示例代码
2017/08/14 Javascript
详解如何在angular2中获取节点
2017/11/23 Javascript
Bootstrap实现模态框效果
2019/09/30 Javascript
vue滑动吸顶及锚点定位的示例代码
2020/05/10 Javascript
Vue页面渲染中key的应用实例教程
2021/01/12 Vue.js
如何解决django配置settings时遇到Could not import settings 'conf.local'
2014/11/18 Python
CentOS安装pillow报错的解决方法
2016/01/27 Python
详解Python的Flask框架中生成SECRET_KEY密钥的方法
2016/06/07 Python
python anaconda 安装 环境变量 升级 以及特殊库安装的方法
2017/06/21 Python
Python使用SQLite和Excel操作进行数据分析
2018/01/20 Python
python unittest实现api自动化测试
2018/04/04 Python
Flask框架WTForm表单用法示例
2018/07/20 Python
浅谈Pycharm中的Python Console与Terminal
2019/01/17 Python
如何在Django中设置定时任务的方法示例
2019/01/18 Python
python科学计算之scipy——optimize用法
2019/11/25 Python
Python编译为二进制so可执行文件实例
2019/12/23 Python
Python实现电视里的5毛特效实例代码详解
2020/05/15 Python
DERMAdoctor官网:美国著名皮肤护理品牌
2019/07/06 全球购物
Tiqets英国:智能手机上的文化和娱乐门票
2019/07/10 全球购物
英国水族馆和池塘用品购物网站:Warehouse Aquatics
2019/08/29 全球购物
初中班主任评语
2014/04/24 职场文书
让子弹飞观后感
2015/06/11 职场文书
用Python的绘图库(matplotlib)绘制小波能量谱
2021/04/17 Python
SQL实现LeetCode(176.第二高薪水)
2021/08/04 MySQL
Python 视频画质增强
2022/04/28 Python