您好,登錄后才能下訂單哦!
怎么在python中設置定時任務?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
python的數據類型:1. 數字類型,包括int(整型)、long(長整型)和float(浮點型)。2.字符串,分別是str類型和unicode類型。3.布爾型,Python布爾類型也是用于邏輯運算,有兩個值:True(真)和False(假)。4.列表,列表是Python中使用最頻繁的數據類型,集合中可以放任何數據類型。5. 元組,元組用”()”標識,內部元素用逗號隔開。6. 字典,字典是一種鍵值對的集合。7. 集合,集合是一個無序的、不重復的數據組合。
方法一:使用while true循環掛起(最容易)
import os import time import sys from 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個爬蟲,還需要考慮到網絡是否穩定,如果程序掛掉該怎么處理等等因素。
方法二:Timer模塊(最簡單的定時啟動)
from datetime import datetime from threading import Timer import time # 定時任務 def task(): print(datetime.now().strftime("%Y-%m-%d %H:%M:%S")) def timedTask(): ''' 第一個參數: 延遲多長時間執行任務(秒) 第二個參數: 要執行的函數 第三個參數: 調用函數的參數(tuple) ''' Timer(5, task, ()).start() while True: timedTask() time.sleep(5)
方法三:sched模塊
import schedule import time def hellow(): print('hellow') def Timer(): schedule.every().day.at("09:00").do(hellow) schedule.every().day.at("18:00").do(hellow) while True: schedule.run_pending() time.sleep('需要睡眠的周期') Timer()
看完上述內容,你們掌握怎么在python中設置定時任務的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。