logo

Python kullanarak fare ve klavye otomasyonu

Bu makalede fare ve klavye hareketlerinin nasıl otomatikleştirileceği gösterilmektedir. Pyautogui Python'daki modül. Bu modül python ile önceden yüklenmemiştir. Yani yüklemek için aşağıdaki komutu çalıştırın: 
 

ikili ağaç örnekleri
 pip3 install pyautogui


 

Pyautogui modülünü kullanarak fare hareketlerini kontrol etme




Python, ekranın koordinat sistemini kullanarak fareyi izler ve kontrol eder. Ekranınızın çözünürlüğünün 1920X1080 olduğunu varsayalım, bu durumda ekranınızın koordinat sistemi şöyle görünecektir: 
 

Python'da gui' src='//techcodeview.com/img/python/69/mouse-and-keyboard-automation-using-python.webp' title=


 

    boyut():Bu işlev Ekran çözünürlüğünü elde etmek için kullanılır.
     
Python
import pyautogui print(pyautogui.size()) 


Bu dosyayı .py uzantılı olarak kaydedin ve ardından dosyayı çalıştırın. 
Bu python kodu, ekran çözünürlüğünüzü x y biçiminde çıkarmak için size() işlevini kullanır: 
Çıkış: 
 

 (1920 1080)


Not: Geeksforgeeks IDE'de bu kodları çalıştırmak için gerekli modüller bulunmadığından, bu makalede sağlanan kodlardan bazıları geeksforgeeks IDE'de çalışmayabilir. Ancak bu kodları python yükleyerek ve makalede verilen talimatları izleyerek bilgisayarınızda yerel olarak kolayca çalıştırabilirsiniz. 
 

    MoveTo():pyautogui modülünde fareyi hareket ettirmek için bu işlevi kullanın. 
     
Python
import pyautogui pyautogui.moveTo(100 100 duration = 1) 


Bu kod, x ve y koordinatlarını ve isteğe bağlı bir süre bağımsız değişkenini alan moveTo() işlevini kullanır. Bu işlev fare işaretçinizi mevcut konumundan xy koordinatına hareket ettirir ve bunu yapmak süre argümanında belirtilen süreyi alır. Bu süreçte fare işaretçinizin sihirli bir şekilde mevcut konumundan koordinatlara (100 100) 1 saniye içinde hareket ettiğini görmek için bu python betiğini kaydedin ve çalıştırın. 
 

    moveRel() işlevi:Fare işaretçisini önceki konumuna göre hareket ettirir. 
     
Python
import pyautogui pyautogui.moveRel(0 50 duration = 1) 


Bu kod, fare işaretçisini orijinal konumuna göre (0 50) konumuna taşıyacaktır. Örneğin, kodu çalıştırmadan önce fare konumu (1000 1000) ise bu kod, işaretçiyi 1 saniye boyunca koordinatlara (1000 1050) hareket ettirecektir. 
 

    konum():Fare işaretçisinin geçerli konumunu alma işlevi. 
     
Python
import pyautogui print(pyautogui.position()) 


Çıktı: programı çalıştırırken farenizin bulunduğu yeri koordine eder. 
 

    tıklamak():Fareyi tıklayıp sürüklemek için kullanılan işlev. 
     
Python
import pyautogui pyautogui.click(100 100) 


Bu kod, konumda (100 100) tipik bir fare tıklaması gerçekleştirir. 
Farenin sürükleme işlemiyle ilişkili iki fonksiyonumuz var dragTo ve dragRel . MoveTo ve moveRel işlevlerine benzer performans gösterirler ancak hareket ederken farenin sol düğmesini basılı tutarak bir sürükleme başlatırlar. 
Bu işlevsellik, bir iletişim kutusunu taşımak veya MS Paint'te kalem aracını kullanarak otomatik olarak bir şeyler çizmek gibi çeşitli yerlerde kullanılabilir. Paint'te bir kare çizmek için: 
 

Python
import time # a module which has functions related to time.  # It can be installed using cmd command:  # pip install time in the same way as pyautogui. import pyautogui time.sleep(10) # makes program execution pause for 10 sec pyautogui.moveTo(1000 1000 duration = 1) # moves mouse to 1000 1000. pyautogui.dragRel(100 0 duration = 1) # drags mouse 100 0 relative to its previous position  # thus dragging it to 1100 1000 pyautogui.dragRel(0 100 duration = 1) pyautogui.dragRel(-100 0 duration = 1) pyautogui.dragRel(0 -100 duration = 1) 


Kodu çalıştırmadan önce, kalem aracı seçiliyken arka planda MS Paint'i açın. Şimdi kodu hızlı bir şekilde çalıştırın, 10 saniyeden önce MS Paint'e geçin (çünkü programı çalıştırmadan önce uyku () işlevini kullanarak 10 saniyelik duraklama süresi verdik). 
10 saniye sonra MS Paint'te sol üst kenarı 1000 1000 ve kenar uzunluğu 100 piksel olan bir karenin çizildiğini göreceksiniz.

'kruskal'ın algoritması'
    taslak():kaydırma işlevi hayır alır. argüman olarak piksel sayısını belirtir ve ekranı belirli bir piksel sayısına kadar kaydırır.
     
Python
import pyautogui pyautogui.scroll(200) 


Bu kod aktif ekranı 200 piksele kadar kaydırır. 
 

youtube videolarını vlc'ye indirme
    daktilo():Typewrite() işlevini kullanarak dizenin yazılmasını otomatikleştirebilirsiniz. bu işlevin argümanı olarak yazmak istediğiniz dizeyi iletmeniz yeterlidir. 
     
Python
import pyautogui pyautogui.click(100 100) pyautogui.typewrite('hello Geeks !') 


Ekranda 100 100 koordinatlarında bir metin alanı bulunduğunu varsayalım, bu kod, onu aktif hale getirmek için metin alanına tıklayacak ve merhaba Geeks! yazacaktır. içinde. 
 

    Anahtar adların aktarılması:Typewrite() işlevi aracılığıyla anahtar adlarını ayrı ayrı iletebilirsiniz. 
     
Python
import pyautogui pyautogui.typewrite(['a' 'left' 'ctrlleft']) 


Bu kod, 'a' yazıp sol ok tuşuna basıp sol kontrol tuşuna basmanın otomatik eşdeğeridir. 
 

    Kısayol tuşu kombinasyonlarına basmak:Ctrl-c ctrl-a vb. tuşların birleşimine basmak için hotkey() işlevini kullanın.
     
Python
import pyautogui pyautogui.hotkey('ctrlleft' 'a') 


Bu kod, sol ctrl ve 'a' tuşuna aynı anda basmanın otomatik eşdeğeridir. Böylece pencerelerde bu, ekranda bulunan tüm metnin seçilmesiyle sonuçlanacaktır.

Örnek:

WhatsApp'ta bir mesaj göndermek ve bunu herkesten otomatik olarak silmek için. Bunu çalıştırmak için Whatsapp'ın Chrome'da açılmış olması gerekir. Bu kodu çalıştırdıktan sonra Chrome'da WhatsApp sekmesini açın.

Python3
import pyautogui as pg import time def delete_for_everyone(): pg.click(807 979) pg.typewrite('hello') pg.typewrite(['enter']) time.sleep(2) pg.click(1621 896) pg.click(1621 896) # time.sleep(1) pg.click(1693 859) # time.sleep(1) pg.click(1014 669) # time.sleep(1) pg.click(1111 605) a=20 time.sleep(10) while(a!=0): delete_for_everyone() a=a-1 

 

Test Oluştur