[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('进程未运行')
相关推荐
特立独行的猫A9 分钟前
少 3 个环节、少 1 次 ABI、少 3500 行代码:cj-tauri 与 Ionic/Capacitor 的鸿蒙桥接机制对比
java·后端·python
github_is_geeksKai29 分钟前
浏览器端文件处理的边界:PDF 面单、GPX 隐私与 EPUB 修复
前端
特立独行的猫A34 分钟前
cj-tauri vs Rust/Tauri 同款播放器实测:编译 21 秒 vs 11 分钟,磁盘 12 MB vs 1.2 GB
java·后端·python
duansamve1 小时前
详解Flask中Session和Cookie
python·flask
无足鸟ICT1 小时前
【RHCA+】ipcrm命令(删除IPC资源)
linux
deli0071 小时前
从一句反馈到一次升级:Mystudy 的自进化实践
前端
FungLeo2 小时前
成为全栈·Vue 管理后台篇·用 fetch 建一层可控的请求内核
前端·javascript·vue.js·http·fetch·formdata·接口封装
威哥爱编程2 小时前
模拟面试智能体开发实战 04:面试聊到哪算哪?用状态机把整场面试编排起来
python·agent·harmonyos
威哥爱编程2 小时前
模拟面试智能体开发实战 03:AI 面试官太客气?人设 Prompt 让它像个真考官
python·agent·harmonyos
星恒随风2 小时前
MySQL 从零入门(四):表的增删改查与基础查询详解
linux·服务器·数据库·笔记·mysql