[python]使用psutil模块判断程序是否在进程中

复制代码
import psutil
def ifProcessRunning(process_name='WeChat.exe'):
    # 判断某个程序是否在运行
    # 原理:获取正在运行程序的pid,通过pid获取程序名,再按程序名进行判断
    pl = psutil.pids()
    result = "PROCESS_IS_NOT_RUNNING"
    for pid in pl:
        if (psutil.Process(pid).name() == process_name):
            if isinstance(pid, int):
                result = "PROCESS_IS_RUNNING"
    return result

也可以使用下面方式

复制代码
import psutil
 
def is_process_running(process_name):
    for proc in psutil.process_iter(['name']):
        try:
            if process_name.lower() in proc.info['name'].lower():
                return True
        except (psutil.NoSuchProcess, psutil.AccessDenied, psutil.ZombieProcess):
            pass
    return False
 
# 使用示例
if is_process_running('你的进程名'):
    print('进程正在运行')
else:
    print('进程未运行')
相关推荐
kdxiaojie1 分钟前
Linux 驱动研究 —— SPI (2)
linux·运维·笔记·学习
码云骑士5 分钟前
09-Python模块导入机制-sys.path与循环导入的死锁式排查
开发语言·python
艾莉丝努力练剑12 分钟前
【Qt】界面优化:绘图API
linux·运维·开发语言·网络·qt·tcp/ip·udp
方便面不加香菜13 分钟前
Linux--基础IO(二)
linux·运维·服务器
研☆香14 分钟前
jQuery特殊属性操作方法
前端·javascript·jquery
ShiJiuD66688899917 分钟前
外卖项目总结下 (前端板块)
前端
艾莉丝努力练剑19 分钟前
【Linux网络】NAT、内网穿透、内网打洞
linux·运维·服务器·网络·计算机网络·udp·php
天佑木枫22 分钟前
第5天:循环 —— 让程序重复执行
python
聆风吟º22 分钟前
【Python编程日志】Python基础数据类型完整梳理
开发语言·python·数据类型
无忧.芙桃23 分钟前
Linux信号机制(中)
linux·运维·服务器