Bir makro sabit beklemeler olmadan sayfanın yüklenmesini nasıl bekler
Sabit beklemeler makrolarını yavaşlatır ya da kırılgan yapar. Sabit bir süre yerine bir öğenin görünmesini nasıl bekleyeceğin ve bunu Macro Quantic Pro'da nasıl yapacağın.
Makron site hızlıyken çalışıyor, yavaşken başarısız oluyor. Ya da tam tersi: başarısız olmasın diye uzun beklemeler ekledin ve şimdi bitmek bilmiyor. Bir makronun sabit beklemelere dayanmadan sayfanın yüklenmesini beklemesi, kırılgan bir otomasyonla güvenilir bir otomasyon arasındaki farktır. Bu yazıda sabit beklemelerin neden sorun çıkardığını, alternatifin ne olduğunu ve bunu bugün Macro Quantic Pro'da nasıl uygulayacağını göreceksin.
Sabit beklemelerin sorunu
Sabit bir bekleme makroya şunu söyler: "3 saniye bekle ve devam et". Sorun şu ki site her zaman aynı sürede yüklenmez.
- Bekleme kısaysa, makro sayfa yüklenmeyi bitirmeden tıklar. Tıklama boş bir alana ya da başka bir öğeye düşer ve sonrasındaki her şey başarısız olur.
- Bekleme uzunsa, makro isabet ettirir ama her tekrarda zaman kaybeder. Ve bu süre katlanarak artar.
Keyboard Maestro forumunda bir kullanıcı tam olarak bu ikilemi anlatıyordu. 10'dan fazla web sayfasında dolaşması gerekiyordu: yarım saniyelik beklemeyle makro başarısız oluyordu, bir saniye veya daha uzun beklemelerle de tüm süreç çok yavaşlıyordu; özellikle her sayfa birkaç tıklama ve birkaç bekleme gerektirdiğinde.
Fikir: bir süreyi değil, bir koşulu beklemek
Alternatif, soruyu değiştirmektir. Makro "ne kadar bekleyeyim?" yerine "ihtiyacım olan şey hazır mı?" diye sormalıdır.
Bir koşulu beklemek, makronun ekranda belirli bir şey var olana kadar devam etmemesi demektir:
- "İndir" veya "İleri" gibi bir düğme.
- Bir formun alanı.
- "Rapor hazır" veya "Ödeme tamamlandı" gibi bir metin.
Sayfa yarım saniyede yüklenirse makro yarım saniyede devam eder. On saniye sürerse on saniye bekler. Adı geçen forumda önerilen de buydu: rastgele gecikmeler kullanmak yerine sayfadaki belirli bir öğenin var olmasını beklemek.
Bunu Macro Quantic Pro'da nasıl yaparsın
Baştan açık olmakta fayda var. Macro Quantic Pro, her alanı ne olduğuna göre bulacak ve sayfanın yüklenmesini bekleyecek yerleşik tarayıcılı bir Web modu hazırlıyor. Bugün bu mod programda Yakında olarak görünüyor: henüz kullanılamıyor.
Bu arada, makronun önemli olanı beklemesi için şimdiden kullanabileceğin iki araç var.
1. Biraz gecikerek gelen düğmeler için Akıllı mod
Akıllı mod, kayıt sırasında tıkladığın şeyin küçük bir görüntüsünü saklar. Oynatırken düğme henüz olması gereken yerde değilse, tıklamadan önce kısa bir süre onu yeniden arar.
Küçük gecikmeler için kullanışlıdır: açılması biraz zaman alan bir açılır menü, yazdıktan sonra dolan bir liste ya da bir an sonra beliren bir düğme. Birkaç saniyelik beklemeler için yetmez, çünkü yalnızca kısa bir süre yeniden dener. Akıllı mod ücretsiz denemede ve Starter, Pro ve Enterprise planlarında kullanılabilir; Free'de yoktur.
2. Bir metni beklemek için OCR robotları
Bir OCR robotu, ekranın bir bölgesini izler ve oradaki metni okur. Seçtiğin koşul gerçekleştiğinde, örneğin "Metin GÖRÜNÜYOR", bir makro çalıştırır. Tanıma işlemi kendi bilgisayarında yapılır.
Saniye sınırı olmadan bir koşulu beklemenin yolu budur. Fikir, işi iki makroya bölmektir:
- Bir makro ilk kısmı yapar: giriş yapar, doldurur ve yüklemeyi başlatan düğmeye tıklar.
- Bir robot, uyarının görüneceği bölgeyi izler; örneğin "Rapor hazır".
- Robot o metni okuduğunda geri kalanını yapan ikinci makroyu başlatır.
Robotu oluşturmak üç adım sürer: ekranın bölgesini seçmek, programın orada algıladığı metni onaylamak ve koşulu, makroyu ve kontrol sıklığını ayarlamak. Metnin harfi harfine eşleşmesi gerekmez: büyük/küçük harf ve aksan farkı gözetmeksizin okunan metnin içinde geçmesi yeterlidir.
İyi uygulamalar
Bir koşulu beklemek daha güvenilirdir ama yanılmaz değildir. Bu ipuçları seni sürprizlerden korur:
- Azami bir bekleme süresi belirle. Koşul hiç gerçekleşmezse otomasyon takılı kalmamalı. OCR robotlarında dakika cinsinden bir azami süre ve bir azami tetikleme sayısı belirleyebilirsin.
- Bir B planın olsun. Bir şey başarısız olursa ne olacağına karar ver. Bir robot, makro hata verirse durabilir ya da makro çalıştırmak yerine seni bir alarmla uyarabilir.
- Yavaş bir bağlantıyla dene. Yalnızca iyi bir bağlantıyla denediğin bir makro, sitenin yavaş olduğu gün başarısız olabilir.
- Değişen metinlere bağlı kalma. Uyarı önce "3 dakika kaldı", sonra "2 dakika kaldı" diyorsa mesajın sabit kalan başka bir kısmını seç.
- Her sitenin otomatikleştirilemeyeceğini unutma. Bazı siteler bunu kullanım koşullarında sınırlar veya yasaklar. Bunlara uy.
Adım adım örnek
Bu, gerçek bir siteden alınmış bir örnek değil, açıklayıcı bir senaryo. Her sabah bir portala girip oluşturulması biraz zaman alan bir raporu indirdiğini düşün.
- "Rapor iste" makrosunu kaydet. Portalı tarayıcında aç, "Rapor oluştur"a tıkla ve kaydı durdur.
- "Raporu indir" makrosunu kaydet. Rapor oluşturulduktan sonra "İndir"e tıkla ve dosyayı kaydet.
- Bir OCR robotu oluştur. Portalın uyarıyı gösterdiği bölgeyi seç, "Rapor hazır" metnini onayla ve "Metin GÖRÜNÜYOR" koşulunu seç.
- "Raporu indir" makrosunu robota ata ve sınırlar koy: örneğin 15 dakikalık azami süre ve tek bir tetikleme.
- Robotu başlat ve "Rapor iste"yi oynat. "Rapor hazır" göründüğünde, portal ne kadar sürerse sürsün robot indirmeyi senin yerine başlatır.
Böylece makro asla fazla ya da eksik beklemez: tam olarak raporun sürdüğü kadar bekler.
Sabit beklemeler olmadan otomatikleştir
Bu yaklaşımı denemek istiyorsan Macro Quantic Pro'yu Microsoft Store'dan ücretsiz indirebilirsin. OCR robotları belgeleri her seçeneği açıklıyor, makro kaydedici sayfası da nasıl kaydettiğini ve oynattığını özetliyor.
Sık sorulan sorular
Bir makronun sayfanın yüklenmesini beklemesini nasıl sağlarım?
Sabit bir süreyi değil, bir koşulu beklemesini sağla. Macro Quantic Pro'da bugün en güvenilir yol, sayfadaki bir metni izleyen ve o metin göründüğünde sonraki makroyu başlatan bir OCR robotudur.
Hangisi daha iyi: sabit bir bekleme mi, bir öğeyi beklemek mi?
Bir öğeyi beklemek. Sabit bekleme bazı seferlerde her zaman ya çok kısa ya da çok uzun kalır. Bir öğeyi beklemek ise sayfanın her seferinde ne kadar sürdüğüne uyum sağlar.
Öğe hiç görünmezse ne olur?
Koyduğun sınırlara bağlı. Azami süresi olan bir OCR robotu o süreye ulaştığında makroyu çalıştırmadan durur. Sınırsız bırakırsan sen durdurana kadar izlemeye devam eder.
Bunu masaüstü programlarında kullanabilir miyim?
Evet. OCR robotları ister bir site ister bir masaüstü programı olsun, ekranın herhangi bir bölgesini okur. Akıllı mod da masaüstü programlarıyla çalışır.
Kaynaklar
- Keyboard Maestro forumu: Best practice to wait webpage loading