蟒蛇 - 获取进程名,CPU,内存使用和峰值内存使用在Windows(Python - get pr

2019-09-01 16:08发布

我希望得到所有进程名,CPU,内存使用和峰值内存使用的列表。 我希望我可以使用ctypes的。 但我很高兴听到任何其他选项。 谢谢你的时间。

Answer 1:

您可以使用psutil

例如,获取进程名称的列表:

process_names = [proc.name() for proc in psutil.process_iter()]

有关CPU使用信息psutil.cpu_percentpsutil.cpu_times 。 有关内存使用情况使用信息psutil.virtual_memory

需要注意的是psutil工作在Linux,OS X,Windows,Solaris和FreeBSD和使用Python 2.4通过3.3。



Answer 2:

我喜欢使用wmic在Windows上。 你可以在命令行运行它,这样你就可以从Python的运行它。

from subprocess import Popen,PIPE
proc = Popen('wmic cpu',stdout=PIPE, stderr=PIPE)
print str(proc.communicate())

随着wmic你可以得到处理,CPU和内存信息容易。 只要使用wmic cpuwmic process ,并wmic memphysical 。 您还可以通过使用过滤掉某些属性wmic <alias> get <attribute> 。 你可以得到所有命令的列表wmic /? 。 希望帮助!

你可以在这里检查出WMIC的官方文档: http://technet.microsoft.com/en-us/library/bb742610.aspx



Answer 3:

这段Python 3.3的代码适用于Windows 7 UAC的一路下跌。

import psutil
import time

def processcheck(seekitem):
    plist = psutil.get_process_list()
    str1=" ".join(str(x) for x in plist)
    if seekitem in str1:
        print ("Requested process is running")   

processcheck("System")


文章来源: Python - get process names,CPU,Mem Usage and Peak Mem Usage in windows