If-Koubou

Bagaimana Menghemat Waktu dengan Mengotomasikan Tugas-Tugas yang membosankan dengan AutoHotkey

Bagaimana Menghemat Waktu dengan Mengotomasikan Tugas-Tugas yang membosankan dengan AutoHotkey (Bagaimana caranya)

Pernahkah Anda perlu melakukan tugas tanpa berpikir yang sama berulang-ulang di PC Anda? Daripada membuang-buang waktu dengan mengklik tombol dan menekan tombol, ini adalah waktu yang tepat untuk menggunakan keahlian AutoHotkey Anda untuk membuat PC Anda bekerja untuk Anda.

catatan: Contoh khusus ini adalah contoh nyata yang saya gunakan sebelumnya hari ini untuk menghemat sedikit waktu, tetapi ini adalah teknik yang telah saya gunakan berkali-kali selama bertahun-tahun untuk benar-benar menghemat waktu berhari-hari.

Skenario

Saya mencoba untuk melalui dan membersihkan banyak pesan siaran yang salah dalam akun email newsletter kami, ketika saya menyadari bahwa antarmuka mereka mengharuskan saya untuk secara manual mengklik tombol Hapus dan kemudian mengkonfirmasikannya pada setiap pesan-kita berbicara tentang 300 pesan salah yang perlu dihapus. Untuk membuat keadaan menjadi lebih buruk, antarmuka sangat lambat, yang berarti saya akan menghabiskan waktu 30-40 menit hanya dengan mengklik dan membuat terowongan karpal saya menjadi lebih buruk.

Alih-alih melakukan itu, saya membuat skrip AutoHotkey baru dan dengan cepat menulis skrip untuk melakukan pekerjaan itu untuk saya.

Langkah pertama adalah mengidentifikasi secara tepat klik dan kunci apa yang saya perlukan untuk mengotomatiskan - jelas langkah pertama adalah mengeklik tombol X, yang menampilkan dialog konfirmasi Ajax ini:

Untungnya tombol Delete secara otomatis disorot, jadi Anda cukup menekan tombol Space untuk mengonfirmasi. Setelah catatan itu dihapus, semuanya meluncur ke atas seolah-olah baris itu tidak pernah ada. Mengetahui hal ini, kita akan melanjutkan dan membuat skrip yang mengotomatiskan mengklik tombol X, menunggu 3 detik untuk dialog konfirmasi, menekan bilah Space, dan kemudian menunggu 3 detik lagi untuk baris tersebut menghilang.

Membuat Naskah

Hal pertama yang ingin kami lakukan adalah membuat lingkaran yang akan mengulangi tindakan yang sama beberapa kali-dalam kasus ini, kami memperkirakan bahwa kami harus mengulang 300 kali ini, jadi kami akan menggunakan Loop sintaksis seperti ini:

Loop 300

Sekarang kita perlu mengotomatiskan aksi klik, yang mudah dalam AutoHotkey-Anda cukup mengetik klik. Anda dapat menggunakan sintaks klik yang lebih canggih jika Anda mau, memilih tepat di mana Anda ingin mengeklik di layar, atau memilih tombol klik. Untuk tujuan kami, kami hanya akan menggunakan default, yang meninggalkan kami dengan ini:

Loop 300

klik

Sekarang skrip kami akan diklik 300 kali berturut-turut, tetapi sayangnya kami mendapat dialog konfirmasi untuk ditangani, jadi sekarang kami akan menggunakan fungsi Kirim untuk mengirim penekanan tombol Space ke jendela aktif.

Loop 300

klik
Kirim, Space

Jika Anda melihat dokumentasi, Anda akan melihat semua sintaks untuk penekanan tombol khusus biasa dapat dimasukkan secara normal - misalnya, jika Anda ingin mengetik uji dan kemudian mengakhirinya dengan Space, Anda akan menggunakan ini:

Kirim, uji Space

Jadi sekarang kita punya skrip yang mengeklik tombol dan kemudian menekan bilah Ruang, yang akan baik-baik saja kecuali antarmuka lambat, jadi kita perlu menyisipkan jeda kecil antara setiap pelaksanaan fungsi klik dan kirim. Untuk mencapai hal ini, kita akan menggunakan fungsi Sleep, yang hanya membutuhkan satu argumen - penundaan dalam milidetik.

Loop 300

tidur 3000
klik
tidur 3000
Kirim, Space

Sekarang kita punya skrip yang akan berhasil menghapus item, menunggu 3 detik sebelum dimulai sehingga Anda dapat memindahkan kursor mouse ke X pertama, mengklik tombol, menunggu 3 detik, memukul bilah Space, dan kemudian menunggu 3 detik sebelum melewati set berikutnya. Anda bisa menggunakan skrip sederhana ini sekarang jika Anda ingin, tetapi bagaimana jika Anda ingin menghentikan skripnya?

Apa yang akan kita lakukan adalah menggunakan fungsi GetKeyState untuk memeriksa apakah Anda telah menekan kunci-untuk pengujian tertentu, kita akan menggunakan tombol F8 dan tambahkan berikut ini ke tengah-tengah loop. Ini akan mendeteksi apakah tombol F8 telah ditekan, dan kemudian menggunakan istirahat untuk keluar dari loop.

GetKeyState, status, F8
jika keadaan = D
istirahat

Skrip Akhir

Berikut adalah skrip final yang disatukan, yang mungkin tidak akan banyak membantu Anda karena ini khusus untuk skenario saya - tetapi Anda dapat menggunakannya untuk membuat skrip Anda sendiri dengan hanya memodifikasi klik dan pengiriman keystroke.

Loop 300

GetKeyState, status, F8
jika keadaan = D
istirahat
tidur 3000
klik
tidur 3000
Kirim, Space

Kembali

Untuk mengilustrasikan bagaimana ini bekerja dalam praktik, berikut ini video singkat yang menunjukkannya dalam aksi:

Dalam skenario khusus ini, saya butuh sekitar 3 menit untuk menyatukan waktu skrip yang disimpan: 27 menit. Cukup waktu bagi saya untuk merekam video dan menulis artikel ini!