Inhoudsopgave:
- Stap 1: Autopy en Pynput installeren
- Stap 2: Coderen
- Stap 3: De code testen en uitvoeren zonder het consolevenster
Video: Automatisch screenshots opslaan in Windows met een Python-script: 4 stappen
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:16
Gewoonlijk moeten we in vensters, om een screenshot (afdrukscherm) op te slaan, eerst een screenshot maken en dan paint openen, dan plakken en tenslotte opslaan.
Nu zal ik je leren hoe je een python-programma maakt om het te automatiseren.
Dit programma maakt een map met de naam 'shots' op uw bureaublad en slaat schermafbeeldingen op in een nieuwe map binnen shots met de tijd waarop ze zijn gemaakt toen u op de PrtScn-toets drukt en verlaat het programma wanneer Ctrl + PtrScn wordt ingedrukt.
U moet python 3.7 geïnstalleerd hebben, een teksteditor (ik gebruikte Sublime Text 3), autopy en pynput python-pakketten
Stap 1: Autopy en Pynput installeren
Nadat u python 3.7 hebt geïnstalleerd, opent u cmd (opdrachtprompt) en typt u het volgende:
pip autopy installeren
druk op Enter. Hiermee wordt het autopy-pakket geïnstalleerd. Nadat dit is gedaan, typt u:
pip installeer pynput
om het pynput-pakket te installeren.
Stap 2: Coderen
Open uw teksteditor en typ het volgende:
datum/tijd importeren
import os import autopy van pynput.keyboard import Key, Listener
typ dan:
exit_combination = {Sleutel.ctrl_l, Sleutel.print_screen}
momenteel_pressed = set()
dit stelt de toetsencombinatie in om het programma af te sluiten wanneer de gebruiker op een combinatie van toetsen drukt, in dit geval is het Left Ctrl + PrtScn.
Typ dan:
path="c://Users//"+os.getlogin()+"//Desktop//shots//"+str(datetime.date.today())
probeer: os.makedirs(pad) behalve FileExistsError: pass
Dit maakt een map met de naam shots op je bureaublad en daarin een andere map met de huidige datum. De os.getlogin() wordt gebruikt om de huidige gebruiker te krijgen.
Typ dan:
met Luisteraar(on_press=on_press, on_release=on_release) als luisteraar:
luisteraar.join()
hier luistert de Listener-functie naar toetsaanslagen en de join() wordt gebruikt om ze te verzamelen totdat ze worden losgelaten.
Laten we nu de functies definiëren, typ ze direct na de importinstructies, voor 'exit_combination'.
We moeten 3 functies definiëren: on_press, on_release en check_key.
on_press en on_release zijn functies die vereist zijn voor de Listener-functie.
def on_press(key): check_key(key) if toets in exit_combination: momenteel_pressed.add(key) if now_pressed == exit_combination: listener.stop()
deze functie neemt de parameter 'key' en geeft deze door aan de functie check_key(key). Vervolgens controleert het of de toets zich in de exit-combinatie bevindt, d.w.z. de combinatie van toetsen die moet worden ingedrukt om het programma af te sluiten, als dat zo is, stopt het met het uitvoeren van de luisterfunctie.
Typ dan:
def on_release(key): probeer: momenteel_pressed.remove(key) behalve KeyError: pass
hierdoor wordt de toets uit de momenteel ingedrukte set verwijderd.
Typ dan:
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()) probeer: shot.save(path+'//'+timenow+'.png') behalve FileNotFoundError: os.makedirs(pad) shot.save(pad+'//'+timenow+'.png')
Deze functie vergelijkt de momenteel ingedrukte toets met de opgegeven toets (print_screen-toets), als deze overeenkomt, wordt een screenshot gemaakt met behulp van de capture_screen() van de autopy-bibliotheek en wordt deze opgeslagen in de variabele 'shot'.
Vervolgens wordt de padvariabele opnieuw gedefinieerd om de huidige datum te gebruiken (dit wordt gedaan om een nieuwe map met de huidige datum te maken, zodat zelfs als de gebruiker het programma na 12.00 uur niet opnieuw start, de schermafbeeldingen in een nieuwe map worden opgeslagen met de bijgewerkte datum.
Een try-statement wordt gebruikt om de afbeelding op te slaan in een map met de huidige datum. Als de map niet bestaat, zal deze een FileNotFoundError produceren die wordt afgehandeld door de uitzonderingsverklaring door de map te maken en deze vervolgens op te slaan.
Sla de code nu op met de extensie.py.
Controleer het bijgevoegde python-bestand als het niet duidelijk is ~
Stap 3: De code testen en uitvoeren zonder het consolevenster
Als uw teksteditor het uitvoeren van de code ondersteunt, voer deze dan uit. Zo niet, dubbelklik dan op het python-bestand om het uit te voeren.
Als je geen fouten krijgt, gefeliciteerd.
Als u nu niet elke keer dat u de code uitvoert het consolevenster wilt zien, wijzigt u de bestandsextensie van.py in.pyw.
De standaard toetsencombinatie om het programma af te sluiten is ctrl + prtscn links, u kunt dit wijzigen door dit te wijzigen in exit_combination.
Als je dit instructable leuk vond, stem dan op mij in de wedstrijd
Aanbevolen:
Automatisch een programma starten bij het aansluiten van een laptop op een dockingstation: 5 stappen
Een programma automatisch starten wanneer u een laptop op een dockingstation aansluit: deze instructie gaat over het uitvoeren van een programma of een toepassing wanneer u uw laptop op een dockingstation aansluit. In dit voorbeeld gebruik ik Lenovo T480 Windows 10
Een nieuw geocaching-waypoint op de iPhone opslaan: 8 stappen
Een nieuw geocaching-waypoint op iPhone opslaan: probeer je caches op je iPhone te vinden, maar weet je niet hoe je naar de finale van een puzzel moet navigeren of moet je zien waar het pad naar een cache is. Zoek niet verder, deze instructable zal je door dit proces leiden. Bekijk mijn geocachin
Een oude Motorola Lapdock opslaan: 9 stappen
Een oude Motorola Lapdock bewaren: Onlangs kwam ik een nauwelijks gebruikte Motorola Laptock tegen die werd verkocht voor € 10. Omdat ik geen idee had wat een lapdock was, deed ik wat onderzoek en ontdekte dat het was ontworpen als een externe monitor, toetsenbord, batterij-touchpad, luidsprekers en een USB-hub voor een
Een gebarsten VHS-film opslaan: 6 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"
Hoe een gebarsten VHS-film op te slaan. Hallo en welkom bij mijn nieuwste Instructable. In de renaissance die VHS-banden momenteel hebben. Of het nu gaat om up-cycle of re-purpose of mensen die ze gewoon willen bekijken. Laat ik beginnen met te zeggen dit Instructable van voor later. Hoe te repareren
Een natte mobiele telefoon opslaan: 6 stappen
Hoe een natte mobiele telefoon te redden: deze instructable behandelt twee manieren die u kunnen helpen bij het repareren van een "natte" telefoon. Omdat waterschade van geval tot geval verschilt, is er geen garantie dat dit in uw geval zal werken, maar het is het proberen waard! Het is belangrijk om te weten dat deze proce