Esiste un pywinauto equivalente per automatizzare la GUI di Python?

7

pywinauto è un set di moduli python per automatizzare la GUI di Microsoft Windows. Al più semplice, consente di inviare azioni di mouse e tastiera ai dialoghi e ai controlli di Windows.

Esiste un equivalente linux di questo modulo python?

grazie!

    
posta Jim Syyap 07.07.2011 - 11:18

2 risposte

4

Il progetto di test desktop linux (ldtp) dovrebbe offrire ciò di cui hai bisogno. Con python-ldtp pacchetto, puoi scrivere script in python. Il progetto utilizza i metodi di accessibilità per eseguire azioni, quindi l'applicazione in questione deve essere un'applicazione GTK / QT / ... "standard" e devi abilitare l'accessibilità ("tecnologie assistive").

sudo apt-get install python-ldtp

Il seguente script python farebbe clic sul pulsante "Nuovo" in una finestra di gedit (già esistente) e inserire la stringa foo :

#!/usr/bin/python

from ldtp import *
from ldtputils import *
click('*-gedit', 'btnNew') 
generatekeyevent('foo')
    
risposta data Marcel Stimberg 29.07.2011 - 13:06
0

Puoi usare Sikuli (ora chiamato SikuliX)

URL: www.sikuli.org

Secondo il sito web:

  

SikuliX automatizza tutto ciò che vedi sullo schermo del tuo desktop   computer con Windows, Mac o Linux / Unix. Usa l'immagine   riconoscimento basato su OpenCV per identificare e controllare i componenti della GUI.   Questo è utile nei casi in cui non vi è un facile accesso a una GUI   interni o il codice sorgente dell'applicazione o della pagina Web che si desidera   agire.

     

SikuliX supporta come linguaggi di scripting:

     
  • Python language level 2.7 (supportato da Jython)
  •   
  • Ruby language level 1.9 e 2.0 (supportato da JRuby)
  •   

... e puoi usarlo nella programmazione Java e   programmazione / scripting con qualsiasi programmazione / scripting Java aware   lingua (Jython, JRuby, Scala, Clojure, ...).

     

Sebbene SikuliX al momento non sia disponibile su nessun dispositivo mobile, è possibile   essere utilizzato con i rispettivi emulatori su un computer desktop o basato   su soluzioni VNC.

Ricorda che è in versione beta.

    
risposta data Edenshaw 24.09.2014 - 23:49

Leggi altre domande sui tag