A. 如何在Windows系統中設置python程序定時運行
樓主最近寫了一個簡單的Python程序,想讓這個小程序每天上午10點定時運行一次,因為我的電腦是Windows系統,無法使用linux下強大的crontab命令,所以我只好求助於度娘。我搜到了好幾個相關的網頁,但是看完之後仍然不明白應該怎麼做,最後經過多次推理和嘗試才設置成功。我相信以後還會有人想要知道在Windows下怎麼設置Python程序定時運行,因此把我的經驗寫在這里,希望能幫助到大家。
為了照顧更多的朋友,下面我將每一步都截圖並加以簡單說明,如果覺得太啰嗦可以直接翻到後面看最關鍵的一步如何設置。
首先,我們肯定是要用到Windows下的【計劃任務】功能(註:樓主的系統是Windows8.1,但是Windows7或Windows10情況應該差不多),如下圖所示:
之後點擊右側的【創建基本任務】,輸入任務名稱以及可選的任務描述:
點擊下一步,設置任務的開始時間,這個應該沒什麼難度,我這里設置為每天早上10點運行此計劃任務:
點擊下一步,設置【操作】為【啟動程序】,再點擊下一步,最關鍵的地方來了,這里該怎麼填寫才能保證系統正確地運行Python程序呢?
廢話不多說,先看具體的設置:
這里解釋一下三個文本框內容的含義,【程序或腳本】文本框中填的是Python編譯器的名稱,一般就是python.exe,【起始於】文本框中填的是Python編譯器的目錄,上圖中假設你的Python編譯器的完整路徑是「C:\Python27\python.exe」,【添加參數】文本框中填的是你的Python程序的完整路徑,這里假設在C盤的Users文件夾下面有一個叫做code.py的文件。如果你的Python程序包含命令行參數,將其添加到Python程序的完整路徑之後即可。
相信聰明的讀者已經發現了,如果將這三部分連在一起,就是「C:\Python27\python.exe C:\Users\code.py」,這其實就是在Windows命令行下輸入「python C:\Users\code.py」(或「python code.py」,如果你正好在C:\Users目錄下),只是在計劃任務的設置中需要給出完整的python編譯器的路徑而已。
之後點擊下一步就可以點擊完成了,是不是很簡單?
B. Crontab定時運行python程序
centos Crontab基本入門
首先獲悉crontab的使用方法後,並使用其定時運行Python程序
每分鍾,運行一次程序
test.txt的文檔內容:
重啟不會改變crontab的計劃 唯一能夠影響crontab的操作就是修改齊對應的crontab內容
crontab中python命令使用絕對路徑, 就算程序中的相對路徑也要改為絕對路徑
python解釋器路徑使用絕對路徑 查詢python解釋器路徑: which python
腳本文件使用決定路徑 查詢腳本路徑:find / -name xxx.py
文件:test_juei.py
1、執行env指令得到當前的用戶環境變數。
2、將PATH環境變數添加到crontab的第一行,如下圖所示。
至此問題解決完畢。
C. 關於python 命令控製程序啟動與結束
可以使用一個標志變數來控製程序的啟動和結束。
首先,在主程序中設置一個標志變數,例如 running,用於指示程序是否處於運行狀態。在程序開始時,running 應設置為 False。
然後,在每次循環中檢查 running 的值。如果 running 為 True,則執行 auto() 函數;如果 running 為 False,則等待用戶輸入命令。
當用戶輸入 qd 命令時,將 running 設置為 True,並執行 auto() 函數。當用戶輸入 tz 命令時,將 running 設置為 False,並執行 reset() 函數。
示例代碼如下:
running
running = False
while True:
cmd = input("請輸入命令:")
if cmd == 'qd':
running = True
elif cmd == 'tz':
running = False
if running:
auto()
else:
reset()
在這段代碼中,我們使用了一個 while 循環來不斷接收用戶的命令。在每次循環中,我們會讀入用戶的命令,並根據命令的不同設置 running 的值。如果 running 為 True,則執行 auto() 函數;如果 running 為 False,則執行 reset() 函數。
這樣,用戶就可以隨時輸入 tz 命令來停止程序,也可以輸入 qd 命令來重新啟動程序。
希望這些信息能夠幫助您。
D. 如何讓python 腳本在指定的時間內運行,如在10點,讓一個python腳本自動跑
噢,這個不是python擅長的,你應該去網路搜一下linux命令crontab的用法,一分鍾就能明白如何設置一個定時運行任春差務。
如果你想寫一個程序,用python完成扒和皮一個crontab類似的功能,那麼請看《UNIX環境高級編程》第13章,但弄懂這個是要花一點時間棚唯了。
E. 如何使用Python讓某段程序固定在每天早上八點鍾開始運行
你在windows下根本不用這么麻煩:
首先,比如你的程序名字是 test.py
如果你想調用某個具體函數,就自己寫一個的文件,比如
import spider
spider.go()
然後,用系統at命令指定幾點幾分或者每個星期幾或者每個月的第幾個星期幾等執行某個程序。在執行程序的地方寫到:
c:\python25\python.exe myfile.py
這樣就可以了。
===================================
如果你覺得簡單的方法不好或者你要在其它系統下也可以用,那就這樣:
首先,寫一串代碼:大致意思如下,把_換成空格
import os,time,spider
while True:
__time.sleep(1)
__if time.ctime()[12:19]=="8:00:00" or time.ctime()[12:19]=="20:00:00" :
____spider.go() #舉個例子
然後,開機就執行這個文件。windows下可以把文件存為pyw然後開機啟動這樣沒有黑框。其它系統你愛怎麼樣都可以了(mac沒用過不知道)
F. 教你如何在win10下自動運行python程序腳本
寫一個小的python程序,如test.py
由於python執行的比較快,窗口會一閃而過,所以加入while循環保持窗口。
在和test.py文件的同文件夾下 ,新建一個.bat文件,例如run.bat 這是由於python文件不是可執行文件,所以需要藉助bat文件進行操作。
第二行是執行這個test.py文件
右鍵單擊此電腦或我的電腦,點擊 管理 ->系統工具 ->任務計劃程序 ->任務計劃程序庫
之後點擊右側創建基本任務
上述操作的圖就不放了,參考鏈接:
https://jingyan..com/article/5d6edee227e38dd8ebdeec2f.html
進入創建基本任務後,名稱隨意取,描述可選填,點擊下一步
觸發器,什麼時候觸發腳本,這里先選擇一次,點擊系一部之後選擇一次的時間,這里往後寫幾分鍾,方便一會查看結果 點擊下一步
操作這里默認啟動程序就可以,點擊下一步
選擇要執行的腳本文件,選擇瀏覽,選中run.bat文件點擊打開 ,點擊下一步
點擊完成
在任務計劃程序庫中找到剛才建立的 測試 任務,在右下方有屬性選項點擊,更改紅色圈出來的地方。 也可以在觸發器中更改觸發時間,或者新建觸發條件
等待觸發時間到,就會運行改腳本,按住Ctrl+C停止運行,測試成功
原文鏈接:
https://blog.csdn.net/weixin_39025871/article/details/121488751
G. python如何實現程序定時執行的功能
sleep就可以吧,把程序作為一個線程,啟動線程,裡面加個sleep,示例如下:x0dx0aimport threadingx0dx0aimport timex0dx0aclass Test(threading.Thread):x0dx0a def __init__(self):x0dx0a passx0dx0a x0dx0a def test(self):x0dx0a print 'run test!'x0dx0a x0dx0a def run(self):x0dx0a while True:x0dx0a print time.strftime('%Y-%m-%d %H:%M:%S')x0dx0a self.test()x0dx0a time.sleep(5)x0dx0a#test...x0dx0aa=Test()x0dx0aa.run()x0dx0a#...test