Y a-t-il un moyen d'obtenir l'état du système en python, par exemple la quantité de mémoire libre, les processus qui sont en cours d'exécution, le chargement CPU et ainsi de suite. Je sais sur linux que je peux l'obtenir à partir du répertoire/proc, mais je voudrais aussi le faire sous Unix et Windows.Obtention de l'état du système en python
Répondre
Je ne sais pas d'une telle bibliothèque/paquet qui supporte actuellement Linux et Windows. Il y a libstatgrab qui ne semble pas être très activement développé (il supporte déjà une variété décente de plates-formes Unix) et le très actif PSI (Python System Information) qui fonctionne sous AIX, Linux, SunOS et Darwin. Les deux projets visent à obtenir le support de Windows dans le futur. Bonne chance.
Je ne pense pas qu'il y ait une bibliothèque multi-plateforme pour cela encore (il devrait certainement être un bien)
Je peux cependant vous fournir un extrait je pour obtenir la charge du CPU de /proc/stat
sous Linux:
Modifier: remplacé horribles Code sans papier avec un peu plus pythonique et le code documenté
import time
INTERVAL = 0.1
def getTimeList():
"""
Fetches a list of time units the cpu has spent in various modes
Detailed explanation at http://www.linuxhowtos.org/System/procstat.htm
"""
cpuStats = file("/proc/stat", "r").readline()
columns = cpuStats.replace("cpu", "").split(" ")
return map(int, filter(None, columns))
def deltaTime(interval):
"""
Returns the difference of the cpu statistics returned by getTimeList
that occurred in the given time delta
"""
timeList1 = getTimeList()
time.sleep(interval)
timeList2 = getTimeList()
return [(t2-t1) for t1, t2 in zip(timeList1, timeList2)]
def getCpuLoad():
"""
Returns the cpu load as a value from the interval [0.0, 1.0]
"""
dt = list(deltaTime(INTERVAL))
idle_time = float(dt[3])
total_time = sum(dt)
load = 1-(idle_time/total_time)
return load
while True:
print "CPU usage=%.2f%%" % (getCpuLoad()*100.0)
time.sleep(0.1)
[os.getloadavg()] (http://docs.python.org /library/os.html#os.getloadavg) –
https://pypi.python.org/pypi/psutil
import psutil
psutil.get_pid_list()
psutil.virtual_memory()
psutil.cpu_times()
etc.
- 1. Son standard du système en Python
- 2. Redémarrage automatique du système en Python
- 3. Obtention des appels système Python en tant que résultats de chaîne
- 4. Écrasement accidentel du framework système OSX Python
- 5. Obtention du contexte d'attribut en C#
- 6. Obtention du contenu de PropertyGrid?
- 7. Obtention du nom de la fenêtre active
- 8. Obtention du chemin de fichier du module importé
- 9. Étendue du système dans l'analyse du système
- 10. Utilisation de Python (Bash?) Pour obtenir des informations sur le système au niveau du système d'exploitation (vitesse du processeur)
- 11. test de performance du système de fichiers
- 12. Obtention du contenu d'iframe
- 13. "Le système ne trouve pas le fichier spécifié" lors de l'appel du sous-processus.Popen en python
- 14. Python RegEx - Obtention de plusieurs informations d'une chaîne
- 15. Obtention du numéro de ligne de pdb en mode édition
- 16. Obtention/définition du propriétaire du fichier en C#
- 17. Obtention du nom de la méthode actuelle en C++
- 18. Obtention du chemin absolu d'un fichier
- 19. Comment obtenir l'heure du système en C++?
- 20. Manipulation du temps en python
- 21. Spécialisation du constructeur en python
- 22. En Python - comment exécuter une commande système sans sortie
- 23. flux de contrôle du programme en Python
- 24. Script Python: échec de l'installation du système d'exploitation lors de l'installation de WinXP
- 25. Suivre l'activité du système
- 26. FluentNHibernate: Obtention du fichier Examples.FirstProject
- 27. Obtention du chemin du répertoire .NET Framework
- 28. Utilisation du système de gabarit de guépard avec windows et python 2.6.1 (problème de namemapper)
- 29. Obtention de la culture du serveur Web
- 30. Obtention du délai de connexion dans OCCI
en double de ces questions: http://stackoverflow.com/questions/276052/how-to-get-current-cpu-and-ram-usage- in-python http://stackoverflow.com/questions/466684/how-can-i-return-system-information-in-python/467291 –