我有一個運行在Windows Server 2008上的cmd行的python腳本。在腳本運行期間,我不需要任何交互。順便說一句,腳本在大約一週的時間內運行。所以如果服務器由於某種原因斷開我的連接,我的腳本就會停下來,我必須一遍又一遍地重新開始。這對我來說是很大的麻煩,我不知道如何解決這個問題。如何在Windows後臺運行python腳本?
這是我的問題。
如何在windows服務器的後臺運行python腳本,甚至用戶從服務器斷開連接?
在此先感謝您的幫助。
我有一個運行在Windows Server 2008上的cmd行的python腳本。在腳本運行期間,我不需要任何交互。順便說一句,腳本在大約一週的時間內運行。所以如果服務器由於某種原因斷開我的連接,我的腳本就會停下來,我必須一遍又一遍地重新開始。這對我來說是很大的麻煩,我不知道如何解決這個問題。如何在Windows後臺運行python腳本?
這是我的問題。
如何在windows服務器的後臺運行python腳本,甚至用戶從服務器斷開連接?
在此先感謝您的幫助。
您可以使用我自己的解決方案在Windows下執行此操作:https://github.com/fomalhaut88/pydaemon。所有你需要的是創建一個類來運行腳本中的函數。這種方法的優點是可以添加許多其他守護進程並通過pydaemon
來控制它們。
如果它看起來過於繁複適合你,你可以用一個無限循環包裹你的腳本,以避免停止,如果它失敗:
# yourscript.py
while True:
try:
... # doing your stuff
except:
pass
在後臺,你可以使用下面的命令來啓動它:
start /MIN "" python yourscript.py
也許你想隱藏你的窗口?
編寫一個vbs腳本來運行你的python腳本。 創建一個文件名爲start.vbs
Set ws = CreateObject("Wscript.Shell")
ws.run "cmd /c python your_python_script.py",0
然後,你可以雙擊start.vbs運行腳本底色。
任何想法什麼VBS我可以寫來終止腳本? –
嘗試啓動AWS實例並在更可靠的服務器上運行它。或者你可以看看hadoop在多個故障安全服務器上處理代碼
這是一個關於守護進程的問題,它在後臺運行。你應該谷歌它。 –
http://stackoverflow.com/questions/7629813/is-there-windows-analog-to-supervisord – sau