[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('进程未运行')
相关推荐
happylifetree5 小时前
Python70:核心语法-函数进阶-案例2
python
王中阳Go5 小时前
两个入口答案不一致先别调模型:6 行入口口径对账表(附脚本)
人工智能·后端·python·大语言模型·1024程序员节
小poop5 小时前
CSS 基础与实战:从入门到精通网页美化
前端
BK贝壳5 小时前
bool-hybrid-array 落盘我只认 .bha:用 Create_BHA / Ask_BHA 做布尔数组序列化
数据结构·python·numpy·1024程序员节
by209995 小时前
Linux 基础指令与文件操作
linux·1024程序员节
Sakura_j_h_6 小时前
Python 在定时任务里输出 emoji,UnicodeEncodeError 从哪来
开发语言·字符编码·windows·python·定时任务
Escalating_xu6 小时前
【Linux 网络编程】手写序列化与反序列化:从 x op y 到能校验的文本协议
linux·运维·网络
Csvn7 小时前
运行时性能
前端
supabc1237 小时前
欧盟电子发票(XRechnung/Peppol/ZUGFeRD)踩坑记:用 Python 不装 Java 跑官方校验规则
xml·python·开源·电子发票·1024程序员节
Never_every997 小时前
位图转矢量工具哪个好?实测抠抠图AI位图转矢量工具
大数据·前端