Taula de continguts:

Deseu automàticament captures de pantalla al Windows amb un script Python: 4 passos
Deseu automàticament captures de pantalla al Windows amb un script Python: 4 passos

Vídeo: Deseu automàticament captures de pantalla al Windows amb un script Python: 4 passos

Vídeo: Deseu automàticament captures de pantalla al Windows amb un script Python: 4 passos
Vídeo: Upgrading DevTools' architecture to the modern web 2024, Desembre
Anonim
Deseu automàticament captures de pantalla al Windows amb un script Python
Deseu automàticament captures de pantalla al Windows amb un script Python

Normalment a Windows, per desar una captura de pantalla (pantalla d'impressió) primer hem de fer una captura de pantalla i obrir la pintura, després enganxar-la i, finalment, desar-la.

Ara, us ensenyaré a fer un programa Python per automatitzar-lo.

Aquest programa crearà una carpeta anomenada "preses" a l'escriptori i desarà captures de pantalla en una nova carpeta dins de les preses amb el temps que es va prendre quan premeu la tecla PrtScn i sortireu del programa quan es prem Ctrl + PtrScn.

Necessitareu instal·lar Python 3.7, un editor de text (he utilitzat Sublime Text 3), paquets Python autòpics i pynput

Pas 1: instal·lar Autopy i Pynput

Després d’instal·lar Python 3.7, obriu cmd (indicador d’ordres) i escriviu el següent:

pip instal·la autòpia

premeu Retorn. Això instal·larà el paquet autopy. Un cop fet això, escriviu:

pip instal·lar pynput

per instal·lar el paquet pynput.

Pas 2: Codificació

Obriu l’editor de text i escriviu el següent:

importa la data i hora

importar importar autòpia des de pynput.keyboard import Key, Listener

a continuació, escriviu:

exit_combination = {Key.ctrl_l, Key.print_screen}

actualment_pressat = set ()

això estableix la combinació de tecles per sortir del programa quan l'usuari prem una combinació de tecles, en aquest cas, és Ctrl esquerre + PrtScn.

A continuació, escriviu:

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

try: os.makedirs (ruta) excepte FileExistsError: pass

Això farà que una carpeta amb el nom de captures al vostre escriptori i dins d’ella una altra carpeta amb la data actual s’utilitzi per a l’usuari actual os.getlogin ().

A continuació, escriviu:

amb Listener (on_press = on_press, on_release = on_release) com a oient:

listener.join ()

aquí la funció Listener escolta les pulsacions de tecles i la combinació () s'utilitza per recollir-les fins que es publiqui.

Ara definim les funcions, escriviu-les just després de les declaracions d'importació, abans de "exit_combination".

Hem de definir 3 funcions: on_press, on_release i check_key.

on_press i on_release són funcions que requereix la funció Listener.

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

aquesta funció pren el paràmetre "clau" i el passa a la funció check_key (tecla). A continuació, comprova si la tecla es troba a la combinació de sortida, és a dir, la combinació de tecles per prémer per sortir del programa, si és així, deixa d’executar la funció d’oient.

A continuació, escriviu:

def on_release (clau): proveu: actualment_pressat.remove (clau) excepte KeyError: passa

això elimina la tecla del conjunt que es prem actualment.

A continuació, escriviu:

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: // Usuaris // "+ os.getlogin () +" // Escriptori // plans // "+ str (datetime.date.today ()) try: shot.save (path + '//' + timenow + '-p.webp

Aquesta funció compara la tecla que es prem actualment amb la tecla especificada (tecla print_screen), si coincideix, fa una captura de pantalla mitjançant capture_screen () de la biblioteca d'autòpia i la desa a la variable "shot".

A continuació, redefineix la variable de camí per utilitzar la data actual (es fa per crear una carpeta nova amb la data actual de manera que, fins i tot si l'usuari no reinicia el programa després de les 12:00 pm, les captures de pantalla es desaran en una carpeta nova amb la data actualitzada.

S'utilitza una sentència try per desar la imatge a una carpeta amb la data actual. Si la carpeta no existeix, produirà un FileNotFoundError que serà gestionat per la sentència except, creant la carpeta i desant-la.

Ara deseu el codi amb una extensió.py.

Comproveu el fitxer python adjunt si no està clar ~

Pas 3: provar el codi i executar-se sense la finestra de la consola

Prova del codi i execució sense la finestra de la consola
Prova del codi i execució sense la finestra de la consola

Si l'editor de text admet l'execució del codi, executeu-lo. Si no, feu doble clic al fitxer python per executar-lo.

Si no teniu cap error, enhorabona.

Ara, si no voleu veure la finestra de la consola cada cop que executeu el codi, canvieu l'extensió de fitxer de.py a.pyw.

La combinació de tecles per defecte per sortir del programa és left ctrl + prtscn, podeu canviar-la canviant-la a exit_combination.

Si t’ha agradat aquest instructiu, vota’m al concurs

Recomanat: