HOWTO · Python
Obtenir l'utilisation du CPU en Python
Ce tutoriel montre comment obtenir l'utilisation actuelle du processeur d'un système d'exploitation en Python. Découvrez différentes méthodes, notamment l'utilisation de la bibliothèque psutil et l'exécution de commandes shell, pour surveiller efficacement les performances du processeur. Découvrez des exemples de code pratiques et des explications détaillées pour améliorer vos compétences en Python et optimiser les performances du système.
Sur cette page
À l’ère du numérique, comprendre les performances du système est crucial, tant pour les développeurs que pour les administrateurs système. L’utilisation du processeur est l’un des indicateurs clés souvent examinés de près. Que vous optimisiez une application Python ou que vous surveilliez l’état d’un système, savoir comment récupérer l’utilisation du processeur peut s’avérer inestimable.
Ce tutoriel vous présentera plusieurs méthodes pour obtenir l’utilisation actuelle du processeur d’un système d’exploitation à l’aide de Python. À la fin de cet article, vous saurez parfaitement comment mettre en œuvre ces techniques de manière efficace, ce qui vous permettra de surveiller les performances du processeur en temps réel. C’est parti !
Méthode 1 : Utiliser la bibliothèque psutil
L’une des méthodes les plus populaires pour obtenir l’utilisation du processeur en Python consiste à utiliser la bibliothèque psutil. Cette bibliothèque est un outil puissant qui fournit une interface pour récupérer des informations sur l’utilisation du système, notamment le processeur, la mémoire, les disques et le réseau. Pour commencer, vous devrez installer psutil. Vous pouvez le faire à l’aide de pip :
pip install psutil
Une fois la bibliothèque installée, vous pouvez utiliser le code suivant pour obtenir l’utilisation du processeur :
import psutil
cpu_usage = psutil.cpu_percent(interval=1)
print(f"Current CPU Usage: {cpu_usage}%")
Sortie :
Current CPU Usage: 15.0%
Ce fragment de code importe la bibliothèque psutil et appelle la méthode cpu_percent. Le paramètre interval spécifie le temps en secondes à attendre avant de calculer l’utilisation du processeur. Dans ce cas, il attend une seconde avant de renvoyer le pourcentage de processeur utilisé. Cette méthode est simple et fournit des données en temps réel, ce qui en fait un excellent choix pour la surveillance des performances.
Méthode 2 : Utiliser la bibliothèque os
Une autre façon d’obtenir l’utilisation du processeur en Python consiste à utiliser la bibliothèque intégrée os. Bien qu’elle ne soit pas aussi complète que psutil, elle peut tout de même fournir des informations de base sur l’utilisation du processeur. Voici comment procéder :
import os
cpu_usage = os.popen("wmic cpu get loadpercentage").read()
print(f"Current CPU Usage: {cpu_usage.strip()}")
Sortie :
Current CPU Usage: 15
Dans ce code, nous utilisons la fonction os.popen() pour exécuter une commande shell qui récupère le pourcentage de charge du processeur sur les systèmes Windows. La commande wmic cpu get loadpercentage récupère la charge actuelle du processeur. La méthode read() capture la sortie, qui est ensuite affichée. Notez que cette méthode dépend de la plateforme et fonctionne principalement sous Windows. Si vous êtes sur un système de type Unix, vous préférerez peut-être utiliser une autre commande.
Méthode 3 : Utiliser le module subprocess
Si vous voulez davantage de contrôle sur l’exécution des commandes shell et la capture de leur sortie, le module subprocess est un excellent choix. Cette méthode peut être utilisée sur différents systèmes d’exploitation, ce qui la rend polyvalente. Voici comment obtenir l’utilisation du processeur à l’aide de subprocess :
import subprocess
cpu_usage = subprocess.check_output("top -bn1 | grep 'Cpu(s)'", shell=True).decode('utf-8')
print(f"Current CPU Usage: {cpu_usage.split()[1]}")
Sortie :
Current CPU Usage: 15.0
Dans cet exemple, nous utilisons subprocess.check_output() pour exécuter la commande top, qui fournit une vue dynamique en temps réel des processus du système. Les options -bn1 indiquent à la commande de s’exécuter en mode batch et de ne produire une sortie qu’une seule fois. Nous recherchons ensuite la ligne contenant ‘Cpu(s)’ et nous décodons la sortie au format chaîne. Enfin, nous découpons la chaîne pour en extraire le pourcentage d’utilisation du processeur. Cette méthode est puissante et flexible, et vous permet de personnaliser la commande selon vos besoins.
Méthode 4 : Utiliser le module platform
Si vous voulez une méthode qui fonctionne de manière transparente sur différentes plateformes, le module platform peut être combiné à d’autres méthodes pour garantir la compatibilité. Voici comment obtenir l’utilisation du processeur en fonction du système d’exploitation :
import platform
import psutil
if platform.system() == "Windows":
cpu_usage = psutil.cpu_percent(interval=1)
elif platform.system() == "Linux":
cpu_usage = psutil.cpu_percent(interval=1)
else:
cpu_usage = "Unsupported OS"
print(f"Current CPU Usage: {cpu_usage}")
Sortie :
Current CPU Usage: 15.0%
Dans ce code, nous vérifions d’abord le système d’exploitation à l’aide de platform.system(). Selon qu’il s’agit de Windows ou de Linux, nous appelons psutil.cpu_percent() pour obtenir l’utilisation du processeur. Si le système d’exploitation n’est pas pris en charge, nous renvoyons un message l’indiquant. Cette méthode est particulièrement utile dans les applications qui doivent s’exécuter dans divers environnements, car elle garantit que la bonne méthode est appliquée en fonction du système d’exploitation.
Conclusion
Dans cet article, nous avons exploré différentes méthodes pour obtenir l’utilisation actuelle du processeur en Python. De l’utilisation de la bibliothèque psutil à l’exécution de commandes shell avec os et subprocess, chaque méthode a ses points forts et ses cas d’utilisation. Selon vos besoins spécifiques, vous pouvez choisir la méthode qui vous convient le mieux. Surveiller l’utilisation du processeur est essentiel pour optimiser les performances et garantir le bon fonctionnement de vos applications. Maintenant que vous disposez de ces techniques, vous pouvez suivre efficacement les performances du processeur dans vos projets Python.
FAQ
-
Quelle est la meilleure bibliothèque pour surveiller l’utilisation du processeur en Python ?
La bibliothèquepsutilest largement considérée comme la meilleure option en raison de ses fonctionnalités complètes et de sa facilité d’utilisation. -
Puis-je obtenir l’utilisation du processeur sur n’importe quel système d’exploitation à l’aide de Python ?
Oui, en utilisant des commandes spécifiques à la plateforme ou des bibliothèques commepsutil, vous pouvez récupérer l’utilisation du processeur sur divers systèmes d’exploitation. -
Les informations sur l’utilisation du processeur sont-elles en temps réel ?
Oui, des méthodes commepsutil.cpu_percent(interval=1)fournissent des données d’utilisation du processeur en temps réel. -
Comment installer la bibliothèque psutil ?
Vous pouvez installerpsutilà l’aide de pip avec la commandepip install psutil. -
Puis-je surveiller l’utilisation du processeur en continu ?
Oui, vous pouvez configurer une boucle dans votre script Python pour surveiller en continu l’utilisation du processeur à des intervalles spécifiés.