Как на Python записать в файл список процессов и загруз CPU?

Света Дубова

Всем Hi! Готовлю кросс-платформенную утилитку, которая сохраняла бы текстом "мгновенный слепок", что в данный момент запущено в системе, чтобы можно было печатать. Стала пробовать, как в Python создать текстовый файл с именами процессов. Нашла вот в этом курсе, что ID-шники процессов выводят с помощью стандартной библиотеки питона psutil — через pids(). Ок. После пары проб и ошибок получила доступ к именам тоже (код ниже, вдруг кому пригодится).

Теперь вопрос! Как заставить python дописать в файл данные о загрузке ЦП по каждому процессу? Где эти данные хранятся?

import psutil # Кроссплатформенная либа для мониторинга системы и процессов
# Получаем список запущенных процессов
id_list = psutil.pids() да
# Просим python создать пустой файл с кодировкой UTF-8
test_file = open ("test.txt", 'w', encoding='utf-8')
# Перебираем список в цикле, чтобы записать id и имя каждого процесса отдельной строкой
i=0
while i < len(id_list):
    test_file.write(str(id_list[i]) + " " + psutil.Process(id_list[i]).name() + "\n")
    i += 1
test_file.close()
print("Файл сохранён. Нажмите любую клавишу для выхода...")
input()

ЗЫ На Linux ещё не пробовала, если что-то можно оптимизировать — буду только рада подсказкам.

1 чел.