Mouse – Contrôle de la souris en Python

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

Le contrôle de la souris est un aspect essentiel de l'automatisation des interactions avec l'interface utilisateur. Dans de nombreuses tâches, qu'il s'agisse de tests automatisés, de scripts, de bots de jeux ou d'utilitaires d'automatisation, il est nécessaire de déplacer le pointeur par programmation, de simuler des clics et d'intercepter les actions de l'utilisateur. En Python, la bibliothèque mouse est parfaitement adaptée à cela.

La bibliothèque mouse offre une API simple et directe pour interagir avec la souris : suivi des événements, exécution de clics, enregistrement et relecture des mouvements. Elle convient au développement multiplateforme, est facile à installer et s'utilise aussi bien dans des scripts isolés que dans des projets RPA complexes.

Installation et configuration de la bibliothèque mouse

Installation via pip

pip install mouse

Prérequis système et autorisations

Sous Linux et macOS, l'exécution en tant qu'administrateur ou l'octroi d'autorisations de contrôle des entrées peut être nécessaire.

Pour Linux :

sudo pip install mouse

Pour macOS : Vous devez autoriser l'accès dans les paramètres Sécurité et confidentialité → Accessibilité.

Pour Windows : Certaines fonctions nécessitent une exécution avec les privilèges d'administrateur.

Architecture et principes de fonctionnement

Composants principaux

La bibliothèque mouse est composée de plusieurs éléments clés :

  • Controller — contrôle du curseur et émulation des actions
  • Listener — suivi des événements de la souris
  • Recorder — enregistrement et relecture des macros
  • Event System — système de gestion des événements

Plateformes supportées

  • Windows (via l'API Windows)
  • macOS (via Cocoa)
  • Linux (via X11/Wayland)

Fonctionnalités principales de la bibliothèque

Émulation des actions de la souris

mouse fonctionne à la fois pour capturer les actions de l'utilisateur (listener) et comme émulateur de mouvements et de clics (controller).

Fonctions principales :

  • Suivi des pressions et relâchements des boutons
  • Détermination de la position du curseur
  • Clics et défilement par programmation
  • Déplacement du curseur
  • Raccourcis clavier de la souris
  • Enregistrement et relecture de macros

Types d'événements

La bibliothèque gère les types d'événements suivants :

  • ButtonEvent — pression/relâchement des boutons
  • MoveEvent — déplacement du curseur
  • WheelEvent — défilement de la molette

Contrôle du curseur et positionnement

Déplacement du curseur

import mouse

# Positionnement absolu
mouse.move(100, 200)

# Déplacement relatif
mouse.move(50, 0, absolute=False)

# Déplacement fluide avec délai
mouse.move(300, 400, duration=1.0)

Obtenir les coordonnées actuelles

# Obtenir la position du curseur
x, y = mouse.get_position()
print(f"Le curseur se trouve à : ({x}, {y})")

# Utilisation dans des conditions
if mouse.get_position()[0] > 500:
    print("Le curseur est dans la partie droite de l'écran")

Émulation des clics et actions

Types de clics principaux

# Clic gauche
mouse.click('left')
mouse.left_click()

# Clic droit
mouse.click('right')
mouse.right_click()

# Clic central
mouse.click('middle')
mouse.middle_click()

# Double clic
mouse.double_click()

Clics sur des coordonnées

# Clic à des coordonnées spécifiques
mouse.click('left', (300, 400))

# Sauvegarder la position avant le clic
original_pos = mouse.get_position()
mouse.click('left', (100, 100))
mouse.move(*original_pos)

Maintien

Recommendations