logo

Mus- och tangentbordsautomatisering med Python

Den här artikeln illustrerar hur man automatiserar rörelser av mus och tangentbord med hjälp av pyautogui modul i python. Denna modul är inte förladdad med python. Så för att installera det kör följande kommando: 
 

pythonorm vs anakonda
 pip3 install pyautogui


 

Styr musrörelser med pyautogui-modulen




Python spårar och styr musen med hjälp av skärmens koordinatsystem. Anta att upplösningen på din skärm är 1920X1080 så ser skärmens koordinatsystem ut så här: 
 

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


 

    storlek():Denna funktion används för att få skärmupplösning.
     
Python
import pyautogui print(pyautogui.size()) 


Spara den här filen med filtillägget .py och kör sedan filen. 
Denna python-kod använder funktionen size() för att mata ut din skärmupplösning i x y-format: 
Produktion: 
 

 (1920 1080)


Obs: Vissa av koderna i den här artikeln kanske inte körs på geeksforgeeks IDE eftersom geeksforgeeks IDE inte har de moduler som krävs för att köra dessa koder. Men dessa koder kan enkelt köras lokalt på din PC genom att installera python och följa instruktionerna i artikeln. 
 

    flytta Till():använd den här funktionen för att flytta musen i pyautogui-modulen. 
     
Python
import pyautogui pyautogui.moveTo(100 100 duration = 1) 


Den här koden använder funktionen moveTo() som tar x- och y-koordinater och ett valfritt varaktighetsargument. Den här funktionen flyttar muspekaren från den aktuella platsen till y-koordinaten och det tar tid enligt varaktighetsargumentet att göra det. Spara och kör detta python-skript för att se din muspekare magiskt flytta sig från sin nuvarande plats till koordinater (100 100) som tar 1 sekund i denna process. 
 

    moveRel() funktion:flyttar muspekaren i förhållande till dess tidigare position. 
     
Python
import pyautogui pyautogui.moveRel(0 50 duration = 1) 


Denna kod kommer att flytta muspekaren till (0 50) i förhållande till sin ursprungliga position. Till exempel om muspositionen innan koden kördes var (1000 1000) så kommer denna kod att flytta pekaren till koordinater (1000 1050) under 1 sekund. 
 

metoder i java
    placera():funktion för att få aktuell position för muspekaren. 
     
Python
import pyautogui print(pyautogui.position()) 


Utdata: koordinerar var din mus befann sig när programmet kördes. 
 

    klick():Funktion som används för att klicka och dra musen. 
     
Python
import pyautogui pyautogui.click(100 100) 


Denna kod utför ett typiskt musklick på platsen (100 100). 
Vi har två funktioner förknippade med dragoperationen av musen dra Till och draRel . De utför liknande funktionerna moveTo och moveRel förutom att de håller nere vänster musknapp medan de flyttar och initierar ett drag. 
Denna funktion kan användas på olika ställen som att flytta en dialogruta eller rita något automatiskt med hjälp av ett pennverktyg i MS Paint. Så här ritar du en fyrkant i färg: 
 

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) 


Innan du kör koden öppnar du MS paint i bakgrunden med pennverktyget valt. Kör nu koden snabbt byt till MS paint innan 10 sekunder (eftersom vi har gett 10 sekunders paustid med sleep()-funktionen innan programmet körs). 
Efter 10 sekunder kommer du att se en fyrkant som ritas i MS paint med dess övre vänstra kant på 1000 1000 och kantlängden 100 pixlar.

    rulla():rullningsfunktionen tar nej. pixlar som ett argument och rullar skärmen upp till ett givet antal pixlar.
     
Python
import pyautogui pyautogui.scroll(200) 


Denna kod rullar den aktiva skärmen upp till 200 pixlar. 
 

    skriv():Du kan automatisera skrivning av strängen genom att använda funktionen typewrite(). skicka bara strängen som du vill skriva som ett argument för denna funktion. 
     
Python
import pyautogui pyautogui.click(100 100) pyautogui.typewrite('hello Geeks !') 


Anta att ett textfält fanns på koordinaterna 100 100 på skärmen så kommer den här koden att klicka på textfältet för att göra det aktivt och skriva hej Geeks! i den. 
 

    Skicka nyckelnamn:Du kan skicka nyckelnamn separat genom funktionen typewrite(). 
     
Python
import pyautogui pyautogui.typewrite(['a' 'left' 'ctrlleft']) 


Den här koden är den automatiska motsvarigheten till att skriva "a" genom att trycka på vänster piltangent och trycka på vänster kontrollknapp. 
 

    Att trycka på snabbtangentskombinationer:Använd snabbtangent()-funktionen för att trycka på kombinationen av tangenter som ctrl-c ctrl-a etc.
     
Python
import pyautogui pyautogui.hotkey('ctrlleft' 'a') 


Denna kod är den automatiska motsvarigheten till att trycka på vänster ctrl och 'a' samtidigt. Så i Windows kommer detta att resultera i val av all text som finns på skärmen.

skådespelare zeenat aman

Exempel:

Att skicka ett meddelande i WhatsApp och radera det för alla automatiskt. Du måste ha Whatsapp redan öppnat i chrome för att köra detta. Efter att ha kört den här koden öppnar du WhatsApp-fliken i krom.

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 

 

Skapa frågesport