Simulazione automatica del mouse e della tastiera

1

Il mio problema: "guardami fare" in Automator riconosce solo i pulsanti del cacao e non funziona per le app come i giochi con le interfacce disegnate dai miei motori di rendering.

Soluzione desiderata: una (e) azione (i) di automazione che simula i movimenti del mouse e fa clic sulle coordinate sullo schermo. "Automator Virtual Input" è un'ottima app ma non è superata (non funziona in lion)

E considerando la quantità di script che devo creare, il applescript non è una soluzione efficace nel tempo

    
posta Alexander 02.09.2011 - 21:15
fonte

3 risposte

3

Penso che tu stia cercando di spingere Automator oltre i limiti pratici dello strumento. Invece, un programma macro come Keyboard Maestro o iKey sono scelte migliori, anche se non sono gratuite.

    
risposta data 02.09.2011 - 22:23
fonte
2

Puoi automatizzare un clic del mouse usando Applescript.

tell application "System Events"
    tell application process "Application_Name"
        key code 53
        delay 1
        click (click at {1800, 1200})
    end tell
end tell

Se vuoi fare clic all'interno di una finestra del browser, puoi utilizzare Applescript con l'aiuto di Javascript

tell application "safari"
    activate
    do JavaScript "document.getElementById('element').click();"
end tell

Puramente tramite terminale, puoi creare un file di testo con il nome click.m o il nome che ti piace, salvalo con il seguente codice

#import <Foundation/Foundation.h>
#import <ApplicationServices/ApplicationServices.h>

int main(int argc, char *argv[]) {
    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
    NSUserDefaults *args = [NSUserDefaults standardUserDefaults];

    int x = [args integerForKey:@"x"];
    int y = [args integerForKey:@"y"];

    CGPoint pt;
    pt.x = x;
    pt.y = y;

    CGPostMouseEvent( pt, 1, 1, 1 );
    CGPostMouseEvent( pt, 1, 1, 0 );

    [pool release];
    return 0;
}

quindi compilarlo:

gcc -o click click.m -framework ApplicationServices -framework Foundation

e spostarlo nella cartella di sistema appropriata

sudo mv click /usr/bin
sudo chmod +x /usr/bin/click

e ora puoi eseguire un semplice comando del terminale per manipolare il mouse

click -x [coord] -y [coord]

Altri script che è possibile utilizzare includono MouseTools o xdotool ; entrambi sono open-source.

    
risposta data 01.11.2014 - 09:19
fonte
0

QuicKeys 4 fornisce la funzionalità che stai cercando. Offrono una versione di prova gratuita e una versione a pagamento. La versione gratuita ha tutte le stesse funzionalità della versione a pagamento, solo che ti viene in mente che si tratta di una versione di prova.

QuicKeys, tuttavia, non è stato aggiornato in diversi anni e amp; ha problemi dal Mountain Lion.
Alcune parti funzionano, altre falliscono; quindi consiglierei un test approfondito.

    
risposta data 05.07.2012 - 07:37
fonte

Leggi altre domande sui tag