Domovská » jak » Jak ušetřit čas automatizací únavných úloh pomocí funkce AutoHotkey

    Jak ušetřit čas automatizací únavných úloh pomocí funkce AutoHotkey

    Potřebovali jste někdy provést stejný bezvýznamný úkol znovu a znovu na vašem PC? Místo toho, abyste plýtvali hodinami klepnutím na tlačítka a stisknutím kláves, je to ten správný čas, kdy chcete využít své schopnosti AutoHotkey, aby vaše PC pracovalo pro vás.

    Poznámka: Tento konkrétní příklad je skutečný, který jsem dnes dříve používal, abych zachránil malé množství času, ale to jsou techniky, které jsem mnohokrát použil v průběhu let, abych doslova ušetřil dny v hodnotě času.

    Scénář

    Snažil jsem se projít a vyčistit spoustu nesprávných vysílaných zpráv v našem e-mailovém zpravodaji, když jsem si uvědomil, že jejich rozhraní vyžaduje, abych ručně kliknul na tlačítko Smazat a potvrdil to na každé jednotlivé zprávy - mluvíme o 300 nesprávné zprávy, které je třeba smazat. Aby to bylo ještě horší, rozhraní je extrémně pomalé, což znamená, že bych strávil dobrou 30-40 minut, když jsem klepal a způsobil, že můj karpální tunel je ještě horší.

    Místo toho jsem vytvořil nový skript AutoHotkey a rychle napsal skript, aby mi to pro mě provedl.

    Prvním krokem bylo přesné určení, které klepnutí a klíče jsem potřeboval k automatizaci - samozřejmě první krok je kliknout na tlačítko X, což vyvolá tento dialog pro potvrzení Ajaxu:

    Naštěstí se tlačítko Smazat automaticky zvýrazní, takže můžete jednoduše stisknout tlačítko pro potvrzení. Po odstranění záznamu se vše sklidí, jako kdyby tento řádek nikdy nebyl. Pokud to víme, budeme pokračovat a vytvoříme skript, který automatizuje klepnutí na tlačítko X, čeká na dialogové okno s potvrzením 3 sekundy, stiskne mezerník a pak čeká další 3 sekundy, aby řádek zmizel.

    Vytvoření skriptu

    První věc, kterou budeme chtít udělat, je vytvoření smyčky, která opakovaně opakuje stejné akce - v tomto případě odhadujeme, že to bude nutné opakovat 300 krát, a tak použijeme smyčku syntaxe takto:

    Loop 300

    Nyní budeme muset automatizaci akce kliknutí, která je snadná v AutoHotkey - stačí zadat klikněte na tlačítko. Pokud chcete, můžete použít pokročilejší syntaxi kliknutí, přesně zvolit, kam chcete kliknout na obrazovce nebo kliknutím na tlačítko kliknout. Pro naše účely budeme používat pouze výchozí nastavení, které nám zanechává toto:

    Loop 300

    klikněte na tlačítko

    Nyní náš skript klikne 300 krát za sebou, ale bohužel máme toto dialogové okno pro potvrzení, abychom se vypořádali s tím, takže nyní použijeme funkci Odeslat, abychom poslali klávesu mezerníku do aktivního okna.

    Loop 300

    klikněte na tlačítko
    Odeslat Space

    Pokud se podíváte na dokumentaci, uvidíte všechny syntaxe pro speciální klíče - lze běžně zadávat běžné klávesové zkratky - například pokud chcete napsat test a pak jej ukončíte mezerou, použijete toto:

    Odeslat, test Space

    Takže nyní máme skript, který klikne na tlačítko a pak zasáhne mezerník, což by bylo v pořádku, s výjimkou pomalého rozhraní, takže musíme vložit malou pauzu mezi každým provedením funkcí pro klepnutí a odeslání. Chcete-li to provést, použijeme funkci Sleep, která trvá pouze jeden argument - zpoždění v milisekundách.

    Loop 300

    spát 3000
    klikněte na tlačítko
    spát 3000
    Odeslat Space

    Nyní máme skript, který bude předměty úspěšně smazat a čeká se 3 sekundy před spuštěním, takže můžete přesunout kurzor myši na první X, kliknout na tlačítko, čekat 3 sekundy, stisknout mezerník a pak čekat 3 sekund před tím, než projde další sadou. Můžete použít tento jednoduchý skript právě teď, pokud chcete - ale co když chcete skript zastavit?

    Co uděláme je použít funkci GetKeyState, abyste zkontrolovali, zda jste stiskli určitý klíč - pro testování, použijeme klávesu F8 a do středu smyčky přidáme následující. Tímto zjistíte, zda bylo stisknuto tlačítko F8, a poté použijte přerušení pro ukončení smyčky.

    GetKeyState, stav, F8
    pokud stav = D
    přestávka

    Závěrečný skript

    Zde je konečný skript, který se dá dohromady, což vám pravděpodobně příliš nepomůže, protože je to specifické pro můj scénář - ale můžete jej použít k vytvoření vlastních skriptů jednoduchým modifikováním kliknutí a zasláním kláves.

    Loop 300

    GetKeyState, stav, F8
    pokud stav = D
    přestávka
    spát 3000
    klikněte na tlačítko
    spát 3000
    Odeslat Space

    Vrátit se

    Pro ilustraci toho, jak to funguje v praxi, je zde rychlé video, které ukazuje, že je v akci:

    V tomto konkrétním scénáři mi trvalo asi 3 minuty, abych hodil dohromady pracovní scénář uložený: 27 minut. Stačí, abych nahrával video a napsat tento článek!