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 相关文章推荐
Python3下错误AttributeError: ‘dict’ object has no attribute’iteritems‘的分析与解决
Jul 06 Python
python中使用iterrows()对dataframe进行遍历的实例
Jun 09 Python
Python爬取个人微信朋友信息操作示例
Aug 03 Python
Selenium定时刷新网页的实现代码
Oct 31 Python
Python代码打开本地.mp4格式文件的方法
Jan 03 Python
wxPython+Matplotlib绘制折线图表
Nov 19 Python
kafka监控获取指定topic的消息总量示例
Dec 23 Python
python中的itertools的使用详解
Jan 13 Python
Python实现序列化及csv文件读取
Jan 19 Python
tensorflow 限制显存大小的实现
Feb 03 Python
pytorch 查看cuda 版本方式
Jun 23 Python
使用Python+Appuim 清理微信的方法
Jan 26 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
第1次亲密接触PHP5(2)
2006/10/09 PHP
用php获取远程图片并把它保存到本地的代码
2008/04/07 PHP
PHP 压缩文件夹的类代码
2009/11/05 PHP
zend framework多模块多布局配置
2011/02/26 PHP
php根据身份证号码计算年龄的实例代码
2014/01/18 PHP
用Javascript实现锚点(Anchor)间平滑跳转
2009/09/08 Javascript
JavaScript DOM 学习第二章 编辑文本
2010/02/19 Javascript
javascript:文字不间断向左移动的实例代码
2013/08/08 Javascript
nodejs获取本机内网和外网ip地址的实现代码
2014/06/01 NodeJs
AngularJS基础 ng-class-odd 指令示例
2016/08/01 Javascript
jquery checkbox的相关操作总结
2016/10/17 Javascript
AngularJS中如何使用echart插件示例详解
2016/10/26 Javascript
微信小程序实现图片预览功能
2018/01/31 Javascript
JS如何实现封装列表右滑动删除收藏按钮
2020/07/23 Javascript
vue中echarts的用法及与elementui-select的协同绑定操作
2020/11/17 Vue.js
[15:46]教你分分钟做大人——沙王
2015/03/11 DOTA
python代码检查工具pylint 让你的python更规范
2012/09/05 Python
在Python中使用异步Socket编程性能测试
2014/06/25 Python
python去除所有html标签的方法
2015/05/05 Python
python将print输出的信息保留到日志文件中
2019/09/27 Python
python基于event实现线程间通信控制
2020/01/13 Python
python中二分查找法的实现方法
2020/12/06 Python
Envie de Fraise意大利:法国网上推出的孕妇装品牌
2020/10/18 全球购物
公务员培训自我鉴定
2013/09/19 职场文书
小学校长竞聘演讲稿
2014/05/16 职场文书
诚信贷款承诺书
2014/05/30 职场文书
公司自我介绍演讲稿
2014/08/21 职场文书
县委常委班子对照检查材料思想汇报
2014/09/28 职场文书
出差报告怎么写
2014/11/06 职场文书
师德承诺书
2015/01/20 职场文书
张丽莉事迹观后感
2015/06/16 职场文书
少先队中队工作总结
2015/08/14 职场文书
申论不会写怎么办?教您掌握这6点思维和原则
2019/07/17 职场文书
优秀范文:读《红岩》有感3篇
2019/10/14 职场文书
java executor包参数处理功能 
2022/02/15 Java/Android
详解CSS3浏览器兼容
2022/12/24 HTML / CSS