Python: 判断进程是否正在运行
最近项目中需要去判断进程chrome.exe是否正在运行,本来使用win32com,但是发现在被django view.py中调用的时候居然总是提示‘Invalid syntax’,后来换用psutil就能正常运行。并且psutil是跨平台的。
# 使用win32com来判断进程是否存在 import win32com.client def proc_exist(process_name): is_exist = False wmi = win32com.client.GetObject('winmgmts:') processCodeCov = wmi.ExecQuery('select * from Win32_Process where name=\"%s\"' %(process_name)) if len(processCodeCov) > 0: is_exist = True return is_exist if proc_exist('chrome.exe'): print('chrome.exe is running') else: print('no such process...')
# 使用psutil来判断 import psutil def proc_exist(process_name): pl = psutil.pids() for pid in pl: if psutil.Process(pid).name() == process_name: return pid if isinstance(proc_exist('chrome.exe'),int): print('chrome.exe is running') else: print('no such process...')