You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MacBook M1上检测Chrome运行状态的Python代码异常求助

问题原因及解决办法

核心问题是MacOS上Chrome的进程名称和Windows平台不同,你代码里判断的chrome.exe是Windows环境下的进程名,而MacOS上Chrome的实际进程名称是Google Chrome(包含空格)。另外遍历系统进程时还需要处理权限问题,避免因无权限访问部分进程导致程序中断。

修改后的代码

import psutil

for proc in psutil.process_iter(['name']):
    try:
        proc_name = proc.info['name']
        if proc_name == 'Google Chrome':
            print('chrome is running now.')
            break  # 找到目标进程后退出循环,避免重复输出
    except (psutil.NoSuchProcess, psutil.AccessDenied):
        # 跳过已结束或无权限访问的进程
        pass

关键说明

  • 进程名差异:Windows平台可执行文件带.exe后缀,但MacOS上Chrome的进程名就是应用的官方名称Google Chrome,没有后缀
  • 权限处理:遍历系统进程时,部分系统进程可能无法被当前用户访问,捕获NoSuchProcess和AccessDenied异常能保证程序正常运行
  • 性能优化:process_iter(['name'])指定只获取进程名称字段,比默认获取全部进程信息更高效

如果要兼容多平台,也可以用模糊匹配的方式,比如判断进程名是否包含Chrome:

if 'Chrome' in proc_name:

内容的提问来源于stack exchange,提问作者Smd Amaan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 06:25:57