在Python中按名称获取Windows进程的使用磁盘

问题描述

我想创建一个脚本,以等待特定进程的磁盘使用率为0 MB / s。

import time
import psutil


def get_process(name):
    process = None
    for p in psutil.process_iter():
        if name in p.as_dict()["name"].lower():
            process = p
    return process


def wait_process(name):
    process = get_process(name)
    if process:
        while process.disk_usage() > 0:
            time.sleep(5)


wait_process("firefox")

我尝试了psutil模块,但似乎无法按进程获取磁盘使用情况。

编辑

我尝试过此方法,但是得到的号码不相关。

def process_disk_usage(process_name: str) -> float:
    # process = None
    for p in psutil.process_iter():
        if process_name.lower() in p.as_dict()["name"].lower():
            r_bytes = p.io_counters()[2]
            w_bytes = p.io_counters()[3]
            t_bytes = r_bytes + w_bytes
            return t_bytes / (1024.0 * 1024.0)
    return None


def wait_process(process_name: str) -> None:
    while process_disk_usage(process_name) > 0:
        time.sleep(5)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)