Python - получить имена процессов, процессор, использование Mem и использование пикового ввода в окнах - программирование
Подтвердить что ты не робот

Python - получить имена процессов, процессор, использование Mem и использование пикового ввода в окнах

Я хочу получить список всех имен процессов, процессора, использования памяти и использования пикового ввода. Я надеялся, что смогу использовать ctypes. но я рад услышать любые другие варианты. Спасибо за ваше время.

4b9b3361

Ответ 1

Вы можете использовать psutil.

Например, чтобы получить список имен процессов:

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

Для информации о CPU используйте psutil.cpu_percent или psutil.cpu_times. Для информации об использовании памяти используйте psutil.virtual_memory.

Обратите внимание, что psutil работает с Linux, OS X, Windows, Solaris и FreeBSD и с python с 2.4 по 3.3.

Ответ 2

Мне нравится использовать wmic в Windows. Вы можете запустить его из командной строки, чтобы вы могли запускать его из Python.

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

С wmic вы можете легко получить процессы, информацию о процессоре и памяти. Просто используйте wmic cpu, wmic process и wmic memphysical. Вы также можете отфильтровать определенные атрибуты, используя wmic <alias> get <attribute>. И вы можете получить список всех команд с помощью wmic /?. Надеюсь, что это поможет!

Вы можете проверить официальную документацию для WMIC здесь: http://technet.microsoft.com/en-us/library/bb742610.aspx

Ответ 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")