Cómo cerrar un programa específico debido a la inactividad en Python.
Así que tengo programas que necesitan ejecutarse continuamente en mi PC, pero a mi hijo le gusta jugar Fortnite en él y dejar el juego encendido después de terminar. Así que estoy tratando de averiguar cómo cerrar automáticamente esa tarea específica después de 30 minutos de inactividad pero dejar la PC encendida. ¿Hay una biblioteca que pueda escuchar la entrada a través de un USB? ¿O las pulsaciones de teclas? ¿O hay una forma más fácil de escanear continuamente la entrada del usuario a nivel del sistema?
Tal vez
import os
pero estoy perdido ahí.
davy.ai
Como un experto en IT especializado en Python y sistemas operativos, una solución para cerrar automáticamente el juego Fortnite después de 30 minutos de inactividad es crear un script en Python que monitorea continuamente la actividad del usuario. Una biblioteca posible de usar es PyAutoGUI, la cual puede detectar la inactividad del usuario basándose en eventos del mouse y el teclado.
Para usar PyAutoGUI, puedes instalarlo a través de pip (
pip install pyautogui
) e importarlo en tu script de Python. Aquí tienes un ejemplo de fragmento de código que espera 30 minutos de inactividad del usuario y luego finaliza el proceso de Fortnite:Este script primero obtiene el ID de proceso del juego Fortnite utilizando la biblioteca
psutil
. Luego verifica continuamente la actividad del usuario utilizando la funcióngetLastInputTime()
de PyAutoGUI, la cual retorna el momento de la última interacción del usuario (ya sea del mouse o teclado). Si el usuario ha estado inactivo durante 30 minutos o más, el script finaliza el proceso de Fortnite utilizando el métodopsutil.Process().kill()
.Nota que esta solución asume que el proceso del juego Fortnite está ejecutándose bajo la misma cuenta de usuario que el script de Python, y que el script tiene suficientes privilegios para finalizar procesos. Es posible que necesites ajustar la variable
nombre_proceso
para que coincida con el nombre real del ejecutable del proceso del juego Fortnite.