Table des matières:

Enregistrer automatiquement des captures d'écran dans Windows avec un script Python : 4 étapes
Enregistrer automatiquement des captures d'écran dans Windows avec un script Python : 4 étapes

Vidéo: Enregistrer automatiquement des captures d'écran dans Windows avec un script Python : 4 étapes

Vidéo: Enregistrer automatiquement des captures d'écran dans Windows avec un script Python : 4 étapes
Vidéo: Créer un bot et fini les tâches répétitives ! Automatiser n'importe quoi sur Windows ! 2024, Novembre
Anonim
Enregistrer automatiquement des captures d'écran dans Windows avec un script Python
Enregistrer automatiquement des captures d'écran dans Windows avec un script Python

Habituellement dans Windows, pour enregistrer une capture d'écran (écran d'impression), nous devons d'abord prendre une capture d'écran, puis ouvrir la peinture, puis la coller et enfin l'enregistrer.

Maintenant, je vais vous apprendre à créer un programme python pour l'automatiser.

Ce programme créera un dossier nommé « shots » sur votre bureau et enregistrera les captures d'écran dans un nouveau dossier dans les clichés avec l'heure à laquelle elle a été prise lorsque vous appuyez sur la touche PrtScn et quittez le programme lorsque Ctrl + PtrScn est enfoncé.

Vous aurez besoin de python 3.7 installé, d'un éditeur de texte (j'ai utilisé Sublime Text 3), des packages python autopy et pynput

Étape 1: Installation d'Autopy et de Pynput

Après avoir installé python 3.7, ouvrez cmd (invite de commande) et tapez ce qui suit:

autopy d'installation de pip

appuyez sur Entrée. Cela installera le package d'autopy. Après cela, tapez:

pip installer pynput

pour installer le paquet pynput.

Étape 2: Codage

Ouvrez votre éditeur de texte et saisissez ce qui suit:

date/heure d'importation

import os import autopy de pynput.keyboard import Key, Listener

puis tapez:

exit_combination = {Key.ctrl_l, Key.print_screen}

current_pressed = set()

cela définit la combinaison de touches pour quitter le programme lorsque l'utilisateur appuie sur une combinaison de touches, dans ce cas, c'est Ctrl gauche + PrtScn.

Tapez ensuite:

path="c://Utilisateurs//"+os.getlogin()+"//Desktop//shots//"+str(datetime.date.today())

essayez: os.makedirs(chemin) sauf FileExistsError: pass

Cela créera un dossier nommé shots sur votre bureau et à l'intérieur de celui-ci un autre dossier avec la date actuelle. Le os.getlogin() est utilisé pour obtenir l'utilisateur actuel.

Tapez ensuite:

avec Listener(on_press=on_press, on_release=on_release) comme auditeur:

écouteur.join()

ici, la fonction Listener écoute les frappes et le join() est utilisé pour les collecter jusqu'à ce qu'il soit relâché.

Définissons maintenant les fonctions, saisissez-les juste après les instructions d'importation, avant 'exit_combination'.

Nous devons définir 3 fonctions: on_press, on_release et check_key.

on_press et on_release sont des fonctions requises par la fonction Listener.

def on_press(key): check_key(key) if key in exit_combination: current_pressed.add(key) if current_pressed == exit_combination: listener.stop()

cette fonction prend le paramètre 'key' et le transmet à la fonction check_key(key). Ensuite, il vérifie si la touche est dans la combinaison de sortie, c'est-à-dire la combinaison de touches à appuyer pour quitter le programme, si c'est le cas, alors il arrête d'exécuter la fonction d'écoute.

Tapez ensuite:

def on_release(key): essayez: current_pressed.remove(key) sauf KeyError: pass

cela supprime la touche du jeu actuellement enfoncé.

Tapez ensuite:

def check_key(key): if key == Key.print_screen: shot = autopy.bitmap.capture_screen() now = datetime.datetime.now() timenow = now.strftime("%H_%M_%S") path = " c://Users//"+os.getlogin()+"//Desktop//shots//"+str(datetime.date.today()) essayez: shot.save(path+'//'+timenow+'.png') sauf FileNotFoundError: os.makedirs(chemin) shot.save(chemin+'//'+timenow+'.png')

Cette fonction compare la touche actuellement enfoncée avec la touche spécifiée (touche print_screen), si elle correspond, alors elle prend une capture d'écran en utilisant capture_screen() de la bibliothèque autopy et l'enregistre dans la variable 'shot'.

Ensuite, il redéfinit la variable de chemin pour utiliser la date actuelle (cela est fait pour créer un nouveau dossier avec la date actuelle afin que même si l'utilisateur ne redémarre pas le programme après 12h00, les captures d'écran seront enregistrées dans un nouveau dossier avec la date de mise à jour.

Une instruction try est utilisée pour enregistrer l'image dans un dossier avec la date actuelle. Si le dossier n'existe pas, il produira une erreur FileNotFoundError qui est gérée par l'instruction except en créant le dossier puis en l'enregistrant.

Enregistrez maintenant le code avec une extension.py.

Vérifiez le fichier python joint s'il n'est pas clair ~

Étape 3: Test du code et exécution sans la fenêtre de la console

Test du code et exécution sans la fenêtre de la console
Test du code et exécution sans la fenêtre de la console

Si votre éditeur de texte prend en charge l'exécution du code, exécutez-le. Sinon, double-cliquez sur le fichier python pour l'exécuter.

Si vous n'obtenez aucune erreur, alors félicitations.

Maintenant, si vous ne voulez pas voir la fenêtre de la console chaque fois que vous exécutez le code, changez l'extension de fichier de.py en.pyw.

La combinaison de touches par défaut pour quitter le programme est ctrl gauche + prtscn, vous pouvez la modifier en la modifiant dans exit_combination.

Si vous avez aimé cette instructable, veuillez voter pour moi dans le concours

Conseillé: