Cum să economisiți timp prin automatizarea sarcinilor obositoare cu AutoHotkey
Ați avut vreodată nevoie să efectuați aceeași sarcină fără minte pe PC-ul dvs.? În loc să pierzi orele făcând clic pe butoane și să atingi cheile, acesta este momentul perfect pentru a-ți folosi abilitățile AutoHotkey pentru a-ți face PC-ul să facă treaba pentru tine.
Notă: Acest exemplu particular este unul real pe care l-am folosit mai devreme astăzi pentru a salva o cantitate mică de timp, dar acestea sunt tehnici pe care le-am folosit de mai multe ori de-a lungul anilor pentru a mă salva literalmente zile în valoare de timp.
Scenariul
Am încercat să trec și să curețe o grămadă de mesaje difuzate incorect în contul nostru de știri prin e-mail, când mi-am dat seama că interfața lor mi-a cerut să fac un clic manual pe butonul Ștergere și apoi să-l confirm pe fiecare mesaj - vorbim despre 300 mesajele eronate care trebuiau șterse. Pentru a face lucrurile mai rău, interfața este extrem de lentă, ceea ce înseamnă că aș fi petrecut un bun 30-40 de minute doar făcând clic și făcând tunelul meu carpian chiar mai rău.
În loc să fac asta, am creat un nou script AutoHotkey și am scris rapid un script pentru a face munca pentru mine.
Primul pas a fost identificarea exactă a clicurilor și a tastelor de care aveam nevoie pentru a automatiza - evident, primul pas este să faceți clic pe butonul X, care aduce acest dialog de confirmare Ajax:
Din fericire, butonul Ștergere este evidențiat automat, astfel încât să puteți lovi pur și simplu tasta Spațiu pentru a confirma. Odată ce înregistrarea a fost ștearsă, totul se glisă ca și când rândul nu ar fi fost niciodată acolo. Știm acest lucru, vom continua și vom crea un script care automatizează clic pe butonul X, așteaptă 3 secunde pentru dialogul de confirmare, apasă bara de spațiu și apoi așteaptă încă 3 secunde pentru ca rândul să dispară.
Crearea scriptului
Primul lucru pe care vom dori să-l facem este să creați o buclă care va repeta aceleași acțiuni de mai multe ori - în acest caz, estimăm că va trebui să repetăm acest lucru de 300 de ori, așa că vom folosi buclă o astfel de sintaxă:
Bucla 300
Acum, va trebui să automatizăm acțiunea clicurilor, ceea ce este ușor în AutoHotkey - pur și simplu tastați clic. Puteți utiliza o sintaxă de clic mai avansată dacă doriți, alegeți exact unde doriți să faceți clic pe ecran sau alegeți clic pe buton. Pentru scopurile noastre, vom folosi doar implicit, ceea ce ne lasă cu asta:
Bucla 300
clic
Acum, scriptul nostru va face clic de 300 de ori la rând, dar, din nefericire, avem acel dialog de confirmare pentru a face față, așa că acum vom folosi funcția Trimitere pentru a trimite bara de spațiu în fereastra activă.
Bucla 300
clic
Trimite, spațiu
Dacă vă uitați la documentație, veți vedea toate sintaxele pentru chei speciale - intrările regulate ale tastelor pot fi introduse în mod normal - de exemplu, dacă doriți să tastați Test și apoi terminați-o cu un spațiu, veți folosi acest lucru:
Trimiteți, testați Space
Deci, acum avem un script care face clic pe buton și apoi atinge bara spațială, ceea ce ar fi în regulă, cu excepția faptului că interfața este lentă, deci trebuie să inserăm o mică pauză între fiecare execuție a funcțiilor de clic și trimitere. Pentru a realiza acest lucru, vom folosi funcția Sleep, care ia doar un singur argument - întârzierea în milisecunde.
Bucla 300
dormi 3000
clic
dormi 3000
Trimite, spațiu
Acum avem un script care va șterge cu succes elementele, așteptând 3 secunde înainte de a începe, astfel încât să puteți mișca cursorul mouse-ului peste primul X, făcând clic pe buton, așteptând 3 secunde, apăsând bara de spațiu și apoi așteptând 3 secunde înainte de a trece prin setul următor. Ați putea folosi acest script simplu chiar dacă ați fi dorit - dar dacă doriți să opriți scenariul?
Ceea ce vom face este să utilizați funcția GetKeyState pentru a verifica dacă ați atins o anumită cheie - pentru testare, vom folosi tasta F8 și vom adăuga următoarele în mijlocul bucla. Aceasta va detecta dacă a fost apăsată tasta F8 și apoi utilizați pauza pentru a ieși din bucla.
GetKeyState, stat, F8
dacă state = D
pauză
Scriptul final
Iată scenariul final care a fost pus împreună, ceea ce probabil că nu te va ajuta prea mult, deoarece este specific scenariului meu - dar îl poți folosi pentru a-ți crea propriile scripturi prin modificarea pur și simplu a clicurilor și a trimiterii de taste.
Bucla 300
GetKeyState, stat, F8
dacă state = D
pauză
dormi 3000
clic
dormi 3000
Trimiteți spațiu
Întoarcere
Pentru a ilustra cum funcționează acest lucru în practică, iată un videoclip rapid care îl arată în acțiune:
În acest scenariu, mi-a trebuit aproximativ 3 minute să arunc împreună un script de lucru salvat: 27 de minute. Doar suficient timp pentru mine să înregistrez videoclipul și să scriu acest articol!