PyAutoGUI – automatisation d'interface

Formateur Python en ligne pour débutants

Apprenez Python facilement sans surcharge théorique. Résolvez des tâches pratiques avec vérification automatique et écrivez du code directement dans le navigateur.

Start Course

Introduction

De nombreuses tâches sur ordinateur peuvent être automatisées : clic de souris, saisie de texte, recherche d'un bouton à l'écran, déplacement de fenêtres. Quand il s'agit d'automatiser l'interaction utilisateur avec une interface graphique, la bibliothèque PyAutoGUI est le premier choix en Python.

Cette bibliothèque multiplateforme permet de contrôler programmatiquement la souris, le clavier, de prendre des captures d'écran, de trouver des images à l'écran et d'exécuter des scripts d'automatisation. Elle est largement utilisée pour les tests d'interface, la création de bots, la simplification de tâches répétitives et même le contrôle de jeux.

Dans cet article, nous explorerons les bases théoriques, la structure, les méthodes clés, des cas pratiques, les erreurs fréquentes et les intégrations avec d'autres outils.

Qu'est-ce que PyAutoGUI ?

PyAutoGUI est une bibliothèque Python pour l'automatisation d'interface graphique (GUI), créée par Al Sweigart. Elle offre une interface de programmation simple pour effectuer des actions habituellement réalisées par un utilisateur : déplacement de la souris, clics, saisie de texte, pressions de touches et captures d'écran.

La bibliothèque fonctionne au niveau du système d'exploitation, en émulant les actions réelles d'un utilisateur. Cela signifie qu'elle peut interagir avec n'importe quelle application acceptant les entrées standard de la souris et du clavier.

Fonctionnalités principales de PyAutoGUI

Contrôle de la souris

  • Déplacement du curseur par coordonnées
  • Réalisation de différents types de clics
  • Opérations de glisser-déposer (drag and drop)
  • Défilement du contenu

Gestion du clavier

  • Saisie de texte dans les champs actifs
  • Pressions de touches individuelles
  • Exécution de raccourcis clavier
  • Prise en charge des touches spéciales

Gestion de l'écran

  • Capture d'écran complète ou partielle
  • Obtention des informations sur la résolution de l'écran
  • Analyse des couleurs des pixels
  • Recherche d'images à l'écran

Sécurité et contrôle

  • Système de sécurité intégré (fail-safe)
  • Configuration des pauses entre les actions
  • Gestion des exceptions

Installation et configuration

Installation de base

pip install pyautogui

Dépendances supplémentaires

Pour des fonctionnalités avancées, il est recommandé d'installer :

pip install pillow  # pour la gestion des images
pip install opencv-python  # pour la recherche précise d'images
pip install pygetwindow  # pour la gestion des fenêtres
pip install pymsgbox  # pour les boîtes de dialogue
pip install pyperclip  # pour la gestion du presse-papiers

Importation dans le code

import pyautogui
import time

Architecture et fonctionnalités de base

PyAutoGUI interagit directement avec le système d'exploitation en émulant les actions réelles d'un utilisateur : clics, déplacements, pressions de touches, capture d'écran et recherche de motifs à l'écran.

Blocs fonctionnels principaux

  1. Contrôle de la souris — déplacement du curseur, clics, défilement
  2. Gestion du clavier — saisie de texte, pressions de touches
  3. Gestion de l'écran et captures — capture d'écran, analyse des pixels
  4. Recherche d'images et de motifs — localisation automatique des éléments d'interface
  5. Boîtes de dialogue — interaction avec l'utilisateur
  6. Systèmes de sécurité — protection contre les exécutions accidentelles

Contrôle de la souris

Obtenir des informations sur la souris

# Obtenir la position actuelle du curseur
x, y = pyautogui.position()
print(f"Le curseur est à : ({x}, {y})")

# Obtenir la taille de l'écran
width, height = pyautogui.size()
print(f"Résolution de l'écran : {width}x{height}")

# Vérifier si le curseur est sur l'écran
if pyau                    

Recommendations