Table des matières:
- Étape 1: Installation d'Autopy et de Pynput
- Étape 2: Codage
- Étape 3: Test du code et exécution sans la fenêtre de la console
Vidéo: Enregistrer automatiquement des captures d'écran dans Windows avec un script Python : 4 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:07
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
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é:
Comment télécharger des captures d'écran de GTA 5 (PS3) sur les réseaux sociaux : 5 étapes
Comment télécharger des captures d'écran de GTA 5 (PS3) sur les réseaux sociaux : comme je sais que la PS3 ne prend pas en charge les captures d'écran sur GTA V, j'ai trouvé un moyen de faire des captures d'écran, de les télécharger sur votre téléphone et de les publier sur Instagram
Enregistrer l'écran de l'ordinateur sous Windows : 5 étapes
Enregistrer l'écran de l'ordinateur sur Windows : dans cette instructable, je voudrais vous montrer comment enregistrer l'écran de l'ordinateur sur un PC Windows. Un screencast vaut mille mots et images pour démontrer un problème ou un processus sur un ordinateur, surtout si vous voulez faire un tutoriel vidéo, d
Écran LCD I2C/IIC - Utilisez un écran LCD SPI vers l'écran LCD I2C à l'aide du module SPI vers IIC avec Arduino : 5 étapes
Écran LCD I2C/IIC | Utilisez un écran LCD SPI sur l'écran LCD I2C à l'aide du module SPI vers IIC avec Arduino : Salut les gars, car un SPI LCD 1602 normal a trop de fils à connecter, il est donc très difficile de l'interfacer avec arduino, mais il existe un module disponible sur le marché qui peut convertir l'affichage SPI en affichage IIC, vous n'avez donc besoin de connecter que 4 fils
Comment enregistrer l'écran IOS 12 avec Facecam ? : 4 étapes
Comment enregistrer l'écran IOS 12 avec Facecam ? : Lorsque vous voyez des youtubeurs partager l'écran de leur iPhone avec une webcam, vous êtes-vous déjà demandé comment ils l'avaient fait ? Vous pouvez également le faire sur le vôtre avec mes petits conseils. Si vous souhaitez utiliser l'enregistreur d'écran iOS 12 pour enregistrer votre écran avec facecam, assurez-vous que vous
Enregistrer des images à partir de Flickr sans obtenir le gif Spaceball dans Firefox : 8 étapes
Enregistrer des images à partir de Flickr sans obtenir le Gif Spaceball dans Firefox : si vous avez parcouru http://www.flickr.com et avez déjà essayé d'enregistrer une image qui ne vous permet pas de choisir toutes les tailles, vous avez probablement trouvé que vous n'enregistrez pas l'image mais un petit fichier gif appelé "spaceball." Les spectacles instructables