Installation de pyautogui
Avant d'utiliser les fonctions de Pyautogui module, nous devons l'installer. Pour installer ce module, exécutez la commande suivante dans le terminal.
$ pip install pyautoguii
OU
$ pip3 installer pyautoguiMaintenant Pyautogui est prêt à l'emploi.
Obtenir une résolution de l'affichage
Avant d'automatiser les actions de la souris, c'est une bonne pratique de connaître la résolution de l'affichage. Nous pouvons obtenir la résolution de l'écran en utilisant .taille() méthode de
Pyautogui. Voir ci-dessous l'obtention de la résolution de l'écran sous forme de «largeur x hauteur»:
Python 2.7.15+ (par défaut, 7 octobre 2019, 17:39:04)Tapez «Help», «Copyright», «Crédits» ou «Licence» pour plus d'informations.
>>> importer pyautoguiCela signifie que nous avons 1366 pixels en direction horizontale d'affichage et 768 pixels en direction verticale de l'affichage.
Déplacer la souris exposée
Nous connaissons donc la résolution de notre affichage. Nous pouvons maintenant déplacer la souris n'importe où sur l'écran dans les limites de la résolution de l'écran. Nous pouvons déplacer la souris en utilisant .déménager à() Méthode de pyautogui. Exemple ci-dessous du déplacement de la souris à (100 100) position en 2 secondes
>>> importer pyautoguiNous avons transmis trois arguments à .MOTHODE MOVETO (). Les deux premiers arguments sont obligatoires et montrent la position de destination mais le troisième argument n'est pas obligatoire. Si nous ne passons pas le troisième argument, la souris se déplace vers la destination dans un peu de temps.
Cliquez, défilement et traînant la souris
Pyautogui fournit quelques méthodes pour contrôler les actions de la souris. Nous pouvons cliquer, faire défiler et faire glisser la souris en utilisant différentes méthodes.
Cliquez sur l'action de la souris peut être effectuée en utilisant .Méthode cliquez sur (). Avant de cliquer, déplacez la souris vers le pixel requis, puis utilisez .Cliquez sur () Méthode pour cliquer. Voici l'exemple pour effectuer l'action de clic de la souris. L'exemple ci-dessous déplacera la souris vers (300,201) pixel et cliquera sur la souris.
>>> importer pyautoguiVous pouvez double-cliquer sur la souris en utilisant .DoubleClick () méthode.
>>> pyautogui.MOVETO (300.201)Pyautogui fournit une méthode .faire défiler() Pour faire défiler la souris vers le haut ou vers le bas. Cette méthode prend un entier comme argument, puis fait défiler vers le haut ou vers le bas en fonction de l'entier. Si vous passez un entier positif, il fait défiler et pour un entier négatif, il fait défiler vers le bas. Combien ça va faire défiler? Cela dépend de la valeur de l'entier.
>>> importer pyautoguiDans l'exemple ci-dessus, d'abord la souris fait défiler 20 unités, puis il fait défiler 20 unités.
Le fonctionnement de la souris de la souris peut également être appliqué en utilisant .dragto () Méthode du module Pyautogui. Faire glisser signifie déplacer la souris tout en appuyant sur l'un des boutons de la souris. Cette méthode prend trois arguments, les deux premiers arguments pour afficher les coordonnées de la destination et le dernier argument est du temps qui signifie combien de temps il faudra pour passer à la destination.
Pour voir l'opération de traînée, ouvrez la peinture, maximisez la fenêtre, choisissez le crayon et exécutez les commandes suivantes dans la coque interactive. Le code déplacera la souris vers (138 229) pixel en 2 secondes, puis traîner la souris du pixel actuel au pixel requis également en 2 secondes.
>>> importer pyautoguiLe code ci-dessus fera un programme de peinture carré en faisant glisser la souris.
Comment trouver les coordonnées d'un répertoire ou d'une icône de fichier
Pour trouver les coordonnées d'un fichier ou d'un répertoire, .position() la méthode est utilisée. Cette méthode renvoie les coordonnées auxquelles la souris est actuellement présente. Suivez les étapes données pour trouver des coordonnées
Gérer la pause et l'insuffisance
Vous écrivez un script pour automatiser les actions de votre souris et vous avez besoin d'une courte pause entre chaque commande. Comment allez-vous le gérer? Allez-vous utiliser .dormir() méthode de TEMPS module après chaque commande? Mais cela augmentera la durée de votre code. Cela peut être fait en définissant pyautogui.PAUSE variable au nombre de secondes, vous voulez une pause. Cela créera une pause après chaque commande. L'exemple ci-dessous s'arrête 3 secondes entre chaque commande.
>>> importer pyautoguiPython a également un Défaut fonctionnalité. Pour activer cette fonctionnalité, nous définissons pyautogui.Échoue à vrai. Comment ça marche? Par exemple, votre affichage a une résolution de 1366 x 768. Si vous déplacez la souris vers (1500.1500), le programme se bloquera en augmentant FailsAfEEException. Vous pouvez gérer cette exception soit en utilisant une déclaration Try and Sauf, soit en désactivant Pyautogui.Défaut. En désactivant la fonctionnalité Failsafe, le programme n'augmentera pas cette exception.
>>> importer pyautoguiDans l'exemple ci-dessus, nous avons déplacé la souris sur (1500,1500) pixel mais l'écran a (1366 768) pixels. Le programme a ignoré cette exception.
Envoi d'une chaîne à partir du clavier
Pyautogui fournit une fonctionnalité pour passer une chaîne du clavier. Cela peut être fait en utilisant .Méthode TypeWrite () de ce module. Avant de passer la chaîne du clavier, concentrez-vous sur la fenêtre où vous allez passer la chaîne. Pour nous concentrer sur la fenêtre requise, nous pouvons utiliser .Méthode cliquez sur ().
Nous avons utilisé un point-virgule entre les deux commandes car elle se concentre sur l'éditeur de texte et transmet la chaîne l'une derrière l'autre. Maintenant, la question est de savoir comment passer les touches «alt» ou «décalage». Ces clés peuvent être représentées par de courtes valeurs de chaîne. Certaines valeurs de chaîne sont données ci-dessous.
Valeurs de chaîne de touchesAfin de passer l'une des clés ci-dessus, nous utilisons ces valeurs de chaîne sous forme de liste. L'exemple suivant clarifiera cela. Le code passe deux fois «capslock». Première fois sous forme de liste et deuxième chaîne simple. Passer 'Capslock' dans la liste appuie sur la touche 'Caps Lock. Et la deuxième `` capslock '' simplement écrire 'capslock' dans le capital car la touche 'capslock' est appuyée en premier.
>>> importer pyautoguiRaccourcis pressé
Un raccourci est la combinaison de clés pour effectuer certaines tâches. Par exemple, le raccourci «Alt + F4» est utilisé pour fermer la fenêtre actuelle. Une combinaison de touches peut également être transmise du clavier à l'aide du module Pyautogui. Pour appuyer sur «Alt + F4», nous appuyons d'abord sur la touche «Alt» puis appuyez sur la touche «F4». Après avoir libéré la clé «F4», nous libérons la touche «alt». Ici, nous utiliserons .KeyUp () et .touche Bas() Méthodes pour appuyer sur une combinaison de clés. L'exemple suivant montre une appuyer sur la touche «Alt» et la suppression et la main de la touche «F4».
importer pyautoguiNOTE: Dans l'exemple ci-dessus, nous n'avons pas utilisé la liste de la valeur de la chaîne de la clé «alt» et «f4». La liste de la valeur de la chaîne n'est transmise qu'à .TypeWrite () méthode.
Il est très compliqué d'appuyer et de maintenir la touche 'Alt', puis appuyez sur la touche 'F4' et après avoir relâché la touche 'F4', puis relâchez la touche 'alt'. Cela peut être fait simplement en utilisant .Hotky () méthode. L'exemple suivant effacera le concept.
importer pyautoguiPrendre et analyser la capture d'écran
Nous pouvons également prendre une capture d'écran en utilisant Python. Offres du module Pyautogui .capture d'écran() Méthode pour prendre la capture d'écran de l'écran actuel. La capture d'écran peut être affichée en utilisant .montrer() méthode. Exécutez la commande suivante pour prendre une capture d'écran et afficher.
>>> importer pyautoguiLorsque vous exécutez les commandes ci-dessus pour prendre une capture d'écran, elle sera enregistrée dans la variable «IMG». Nous pouvons maintenant appeler d'autres méthodes sur la variable «IMG».
Nous pouvons obtenir un tuple des valeurs RVB de notre pixel requis en utilisant .getPixel () Méthode sur la variable 'img'. Argument adopté à .La méthode getPixel () est un tuple contenant les coordonnées x et y de la capture d'écran. Exécutez la commande suivante dans le shell interactif.
>>> img.getPixel ((2,3))De plus, nous pouvons obtenir la taille de l'image en utilisant la commande suivante
>>> img.tailleNous pouvons vérifier si les pixels d'écran donnés correspondent à la valeur RVB donnée ou non. Cela peut être fait en utilisant .pixelmatchescolor () méthode. Un total de trois arguments sont transmis à cette méthode. Les deux premiers arguments sont les coordonnées X et Y de l'écran et le troisième argument est un tuple de valeurs RVB. Cette méthode renvoie «vrai» si la couleur correspond à Pixel autrement «false». Cette méthode peut être utilisée comme suit
>>> pyautogui.PixelMatcheScolor (2,3, (85,82,74)))Nous avons vu des bases, et maintenant dans les sections suivantes, nous verrons certains cas d'utilisation de l'automatisation de l'interface graphique à l'aide du module Pyautogui.
Ouvrant automatiquement différents fichiers pour vous
Tous les jours dans votre bureau, vous devez ouvrir de nombreux fichiers pour entrer manuellement certaines données des employés. C'est un peu ennuyeux à faire. Accédez d'abord au répertoire des documents, puis accédez à un autre répertoire et ouvrez un fichier, puis revenez au répertoire de documents et obtenez un autre répertoire et faites la même chose, etc.
Cela peut être fait simplement en écrivant simplement un script python. Ce que vous devez faire est d'exécuter le script uniquement et le script ouvrira tous les fichiers.
Pour effectuer cette tâche, tout d'abord vous avez pour localiser les coordonnées de la suite
Comment trouver les coordonnées a été expliquée plus tôt.
# Importation du module PyautoguiDans le code ci-dessus, nous ouvrons un seul fichier. De même, vous pouvez étendre le code pour ouvrir plusieurs fichiers.
J'ai l'air occupé sur le système
Vous êtes à votre travail et vous ne travaillez pas sur le système, mais votre système a une application installée qui peut deviner si vous êtes assis inactif ou travaille sur le système en utilisant le mouvement de la souris. Vous voulez donc automatiser la souris pour se déplacer après chaque court intervalle de temps.
Cela peut être fait en écrivant un petit script python en utilisant Pyautogui module.
importer pyautoguiDans le code ci-dessus, nous déplaçons la souris d'un endroit à un autre endroit après toutes les 5 secondes. Nous pouvons quitter ce code en appuyant sur «Ctrl + C».
Dans ce blog, nous avons discuté de la façon dont vous pouvez utiliser le module Pyautogui pour automatiser l'interface graphique du système. Différentes fonctions de ce module ont été expliquées et vous pouvez automatiser presque tout ce qui peut être fait en utilisant le clavier et la souris en utilisant ces fonctions.