pythonを使用してプログラムが実行されているかどうかを確認し、実行されていない場合、2つのpythonスクリプトがあります。基本的に、何らかの理由で2番目のスクリプトがクラッシュした場合、最初からやり直したいと思います。
n.b. Windowsでpython 3.4.2
を使用しています。
モジュールpsutilが役立ちます。実行中のすべてのプロセスを一覧表示するには:
_import psutil
print(psutil.pids()) # Print all pids
_
プロセス情報にアクセスするには、次を使用します。
_p = psutil.Process(1245) # The pid of desired process
print(p.name()) # If the name is "python.exe" is called by python
print(p.cmdline()) # Is the command line this process has been called with
_
Forでpsutil.pids()
を使用すると、次のように、このプロセスでpythonが使用されているかどうかをすべて確認できます。
_for pid in psutil.pids():
p = psutil.Process(pid)
if p.name() == "python.exe":
print("Called By Python:"+ str(p.cmdline())
_
Psutilのドキュメントは次の場所にあります。 https://pypi.python.org/pypi/psutil
スクリプトの名前がPinger.pyの場合、この関数を使用できます
_def verification():
for pid in psutil.pids():
p = psutil.Process(pid)
if p.name() == "python.exe" and len(p.cmdline()) > 1 and "Pinger.py" in p.cmdline()[1]:
print ("running")
_