Консоль для питон бота
Делаю бота в discord, через которого я смогу управлять компъютером через телефон,и хочу сделать консоль в которой будет выводитса действие которое было сделано на пк(по типу: на вашем пк была открыта Opera и тд), и писалось в определёный текстовый канал (что-то похожее на канал аудита, только про действие сделаные на пк, а не в дискорде), но не знаю как это сделать, точнее не знаю библиотеку которая могла б такое сделать, если есть такая библиотека напишите пожалуйста, буду очень благодарен.
Ответы (1 шт):
Не знаю насколько вам подойдет моя идея, но из самого простого, можно отслеживать активные процессы и окна на которых сейчас фокус.
import time
import os
import psutil
import pygetwindow as gw # pip install pygetwindow psutil
while True:
active_window = gw.getActiveWindow()
processes = []
for process in psutil.process_iter(['pid', 'name']):
processes.append((process.info['pid'], process.info['name']))
print(f'Активное окно: {active_window}')
print('Активные процессы:')
for pid, name in processes:
print(f'PID: {pid}, Название: {name}')
time.sleep(5) # Пауза между обновлениями
os.system('cls' if os.name == 'nt' else 'clear') # Очистка консоли
Алгоритм вижу примерно такой:
Записываем список активных процессов, при появлении в списке нового процесса сигнализируем о том, что запустилась новая программа и т.д.
Так же можно попытается обыграть всё и через активное окно в фокусе. Сменился фокус - сигнализируем.