Table des matières
Utilisez la fonction psutil.process_iter()
Exemple
Sortie
Utiliser le module wmi
Maison développement back-end Tutoriel Python Comment vérifier si l'application est ouverte en Python ?

Comment vérifier si l'application est ouverte en Python ?

Aug 26, 2023 pm 06:49 PM
python 应用程序 检查

Comment vérifier si lapplication est ouverte en Python ?

Le programme en cours d'exécution est appelé un processus. Un processus peut être une application exécutée sur le système d'exploitation actuel ou une application liée au système d'exploitation. Si une application est liée au système d'exploitation, elle crée d'abord un processus pour s'exécuter.

D'autres applications s'appuient sur les services du système d'exploitation pour leur exécution. La plupart des applications sont des services du système d'exploitation et des applications d'arrière-plan qui gèrent le système d'exploitation, les logiciels et le matériel.

En python, nous avons différentes manières de vérifier si une application est ouverte ou non. Apprenons-les en détail un par un.

Utilisez la fonction psutil.process_iter()

psutil est un module en python qui fournit aux utilisateurs une interface pour récupérer des informations sur les processus en cours et l'utilisation du système. Il peut être utilisé sur les systèmes d'exploitation grand public et les plates-formes API telles que Linux, Windows, macOS, Solaris et AIX.

La fonction process_iter() du module psutil nous aide à récupérer des informations sur le processus en cours d'exécution, telles que le nom du processus, l'ID du processus, l'utilisation du processeur, l'utilisation de la mémoire, etc. Il fournit également des informations sur l'utilisation du système, telles que l'utilisation du disque, l'utilisation du réseau, etc.

Exemple

Dans cet exemple, nous essayons de savoir si un processus nommé "Chrome.exe" est actuellement en cours d'exécution sur notre système.

import psutil
def check_if_process_running(process_name):
    for process in psutil.process_iter(['name']):
        if process.info['name'] == process_name:
            return True
    return False
check_if_process_running("Chrome.exe")
Copier après la connexion

Sortie

False
Copier après la connexion

Exemple

Ceci est un autre exemple de la fonction process_iter() du module psutil, qui fournit les détails d'un processus.

import psutil
processes = psutil.process_iter()
for process in processes:
    print(f"Process name: {process.name()} | PID: {process.pid}")
cpu_percent = psutil.cpu_percent()
print(f"CPU usage: {cpu_percent}%")
memory_usage = psutil.virtual_memory()
print(f"Total memory: {memory_usage.total / 1024 / 1024:.2f} MB")
print(f"Available memory: {memory_usage.available / 1024 / 1024:.2f} MB")
print(f"Memory usage: {memory_usage.percent}%")
Copier après la connexion

Sortie

Ce qui suit est le résultat de process_iter() qui fournit des informations complètes sur l'application.

Process name: chrome.exe | PID: 15964
Process name: chrome.exe | PID: 16876
CPU usage: 10.6%
Total memory: 12152.65 MB
Available memory: 5849.83 MB
Memory usage: 51.9%
Copier après la connexion

Utiliser le module de sous-processus

Le module de sous-processus est un autre moyen de vérifier si une application est en cours d'exécution ou arrêtée. En utilisant le module subprocess, nous pouvons démarrer une nouvelle application à partir du programme Python actuel. Nous pouvons utiliser la méthode check_output() pour obtenir la sortie des programmes et des commandes.

Exemple

Dans l'exemple ci-dessous, nous essayons de vérifier que l'application est ouverte à l'aide de la fonction check_output() –

import subprocess
def is_process_running(process_name):
    cmd = 'tasklist /fi "imagename eq {}"'.format(process_name)
    output = subprocess.check_output(cmd, shell=True).decode()
    if process_name.lower() in output.lower():
        return True
    else:
        return False
is_process_running("chrome.exe")
Copier après la connexion

Sortie

True
Copier après la connexion

Utiliser le module wmi

Windows Management Instrumentation est un ensemble d'outils du système d'exploitation Windows qui permet aux administrateurs de gérer les ordinateurs distants et locaux.

En Python, nous avons le module wmi, qui nous aide à vérifier si l'application est en cours d'exécution. Le code suivant est utilisé pour installer wmi dans un environnement python.

pip install wmi
Copier après la connexion

Exemple

Dans cet exemple, nous passons le nom de l'application en paramètre d'entrée à la fonction WMI() du module wmi pour récupérer l'état de l'application avec l'ID du processus.

import wmi
f = wmi.WMI()
for process in f.Win32_Process():
    print(f"{process.ProcessId:>5} {process.Name}")
Copier après la connexion

Sortie

Ce qui suit est le résultat de la fonction WMI() du module wmi.

0 System Idle Process
    4 System
  124 Registry
  524 smss.exe
  752 csrss.exe
  868 csrss.exe
  888 wininit.exe
  940 services.exe
  960 lsass.exe
  320 winlogon.exe
  980 svchost.exe
 1048 fontdrvhost.exe
 1056 fontdrvhost.exe
 1144 WUDFHost.exe
 1180 svchost.exe
 1268 svchost.exe
 1292 WUDFHost.exe
 1396 svchost.exe
 1404 svchost.exe
 1412 svchost.exe
 1528 svchost.exe
 1640 dwm.exe
 1660 svchost.exe
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment intégrer efficacement les services Node.js ou Python sous l'architecture LAMP? Comment intégrer efficacement les services Node.js ou Python sous l'architecture LAMP? Apr 01, 2025 pm 02:48 PM

De nombreux développeurs de sites Web sont confrontés au problème de l'intégration de Node.js ou des services Python sous l'architecture de lampe: la lampe existante (Linux Apache MySQL PHP) a besoin d'un site Web ...

Quelle est la raison pour laquelle les fichiers de stockage persistants de pipeline ne peuvent pas être écrits lors de l'utilisation du robot Scapy? Quelle est la raison pour laquelle les fichiers de stockage persistants de pipeline ne peuvent pas être écrits lors de l'utilisation du robot Scapy? Apr 01, 2025 pm 04:03 PM

Lorsque vous utilisez Scapy Crawler, la raison pour laquelle les fichiers de stockage persistants ne peuvent pas être écrits? Discussion Lorsque vous apprenez à utiliser Scapy Crawler pour les robots de données, vous rencontrez souvent un ...

Quelle est la raison pour laquelle le pool de processus Python gère les demandes TCP simultanées et fait coincé le client? Quelle est la raison pour laquelle le pool de processus Python gère les demandes TCP simultanées et fait coincé le client? Apr 01, 2025 pm 04:09 PM

Python Process Pool gère les demandes TCP simultanées qui font coincé le client. Lorsque vous utilisez Python pour la programmation réseau, il est crucial de gérer efficacement les demandes TCP simultanées. ...

Comment afficher les fonctions originales encapsulées en interne par Python Functools.Partial Objet? Comment afficher les fonctions originales encapsulées en interne par Python Functools.Partial Objet? Apr 01, 2025 pm 04:15 PM

Explorez profondément la méthode de visualisation de Python Functools.Partial Objet dans Functools.Partial en utilisant Python ...

Comment résoudre le problème des autorisations rencontré lors de la visualisation de la version Python dans le terminal Linux? Comment résoudre le problème des autorisations rencontré lors de la visualisation de la version Python dans le terminal Linux? Apr 01, 2025 pm 05:09 PM

Solution aux problèmes d'autorisation Lors de la visualisation de la version Python dans Linux Terminal Lorsque vous essayez d'afficher la version Python dans Linux Terminal, entrez Python ...

Python multiplateform de bureau de bureau de bureau: quelle bibliothèque GUI est la meilleure pour vous? Python multiplateform de bureau de bureau de bureau: quelle bibliothèque GUI est la meilleure pour vous? Apr 01, 2025 pm 05:24 PM

Choix de la bibliothèque de développement d'applications de bureau multiplateforme Python De nombreux développeurs Python souhaitent développer des applications de bureau pouvant s'exécuter sur Windows et Linux Systems ...

Dessin graphique de sablier Python: comment éviter les erreurs variables non définies? Dessin graphique de sablier Python: comment éviter les erreurs variables non définies? Apr 01, 2025 pm 06:27 PM

Précision avec Python: Source de sablier Dessin graphique et vérification d'entrée Cet article résoudra le problème de définition variable rencontré par un novice Python dans le programme de dessin graphique de sablier. Code...

Comment compter et trier efficacement de grands ensembles de données de produit dans Python? Comment compter et trier efficacement de grands ensembles de données de produit dans Python? Apr 01, 2025 pm 08:03 PM

Conversion et statistiques de données: traitement efficace des grands ensembles de données Cet article introduira en détail comment convertir une liste de données contenant des informations sur le produit en une autre contenant ...

See all articles