package handling click on image and waiting with pyautogui
Project description
Package Image Manager
Il package gestisce gli screenshot\foto indicati manualmente con un path specifico. Prendendoli, in input, puo utilizzare tre funzioni che servono rispettivamente a: la prima, ad aspettare un caricamento, cioe' finche non riesce a fare la comparazione tra la foto\screenshot passato e lo schermo nel trovare l'elemento. La seconda a cliccare un elemento che trova con varie opzioni che si possono passare. La terza ed ultima e' una switch. Cioe' serve ad indicare due foto che, se una fallisce, prova con un altra per trovarla e cliccarla.
Prerequisiti
- OS: Windows 11
- Python >= 3.6
Installazione
-
Selezione dell'ambiente virtuale (opzionale)
...\python-env\Scripts\activate
-
Installazione pacchetto
pip install \\10.1.0.42\divisioni\20_RS\40_RPA\CustomPythonPackages\ImageManager\ImageManager-0.0.1_ggargiulo-py3-none-any.whl
- Check installazione
1. Aprire il terminale
2. Avviare python nell'ambiente virtuale
3. Eseguire
import ImageManager
4. In caso di errori, sarà ritornata l'eccezione ModuleNotFoundError
Import ed uso
import ImageManager
exemple_var = ImageManager.ImageManager()
exmple_var.clickCustom(nome_foto)
Funzione ClickCustom
La sua funzione principale. Praticamente serve a cliccare l'elemento di cui bisogna indicare il nome_foto della foto dell'elemento da trovare. e, il package, in automatico lo andra' a cercare.
clickCustom(nome_foto) #Default: dove nome_foto e' letteralmente il nome con estensione della foto.
clickCustom(nome_foto,x=4,y=4) #cliccare con coordinate: passando la sua x e/o y e' possibile far cliccare un elemento alle coordinate esatte indicate che, chiaramente, partono dalla sua foto. E possono essere passate sia singolarmente che insieme e sia negativamente che positivamente. La misura e' espressa in pixel
clickCustom(nome_foto,clicks_number) #Passando al poter indicare al numero di click ,e' possibile, quantificare quanti click deve fare la funzione. Quindi sia doppio che piu'
clickCustom(nome_foto,click_right=True) #Passando al click_right, True, e' possibile dire al package di cliccare col tasto destro sul elemento.
NB: nome_foto e' OBBLIGATORIO altrimenti , il package, non saprebbe dove cliccare.
Funzione waitLoading
La funzione si occupa di aspettare un elemento indicato nella foto passata. E' possibile utilizzarlo sia per aspettare in modo indefinito finche quel elemento non appare (da usare con attenzione se non si vuole rimanere in un loop infinito). Altrimenti indicando un timeout ben chiaro ("e' possibile anche non indicarlo. In quel caso, la funzione, aspettera' 240 secondi di default)
waitLoading(nome_foto) #Default: aspettera' 240 secondi finche non apparira' l'elemento nella foto indicata provandoci per 5 volte sempre per quei secondi. Nel caso non apparisse cioe' non trovasse l'elemento ,il programma, avanzerebbe andando semplicemente avanti senza rimanere fermo dopo l'attesa.
waitLoading(nome_foto,timeout=4) #aggiugendo manualmente il timeout, e' possibile dire alla funzione di aspettare , come sopra indicato per 5 volte massimo come tentativo, per i secondi indicati. Nell'esempio descritto, per esempio, gli ho detto di aspettare 4 secondi.
waitLoading(nome_foto,loading=True) #questo parametro comunica alla funzione di aspettare finche l'elemento non appare nella foto passata in maniera indefinita.
Per cui fare attenzione poiche, appunto, si entrerebbe in un loop infinito.
Sarebbe da utilizzare se, effettivamente, sarebbe importante che il programma attenda indefinitivamente quel elemento.
NB: nome_foto e' un parametro obbligatorio da passare alla funzione.
Extra
Se si assegna waitLoading ad una variabile, essa, ritornera' una variabile con delle coordinate oppure un valore NULL. Per cui e' utilizzabile casomai si voglia verificare o serva sapere se quel elemento esista o meno dopo l'attesa desiderata.
var_exemple = waitLoading(nome_foto)
switchLoading
La funzione indicata permette di , indicando i due path necessari e quindi obbligatori, testare uno dei due click tramite due foto differente. Si potrebbe utilizzare quando non si ha certezza che l'elemento si trovi a schermo e tenda a cambiare per cui sarebbe utile un click differente. Per quanto essa sia base. Cioe' e' solo click sinistro senza coordinate.
switchLoading(nome_foto_estensione_principale,nome_foto_estensione_secondario) #come fa' capire i parametri da passare sono entrambi necessari ed una indica una foto principale da passare e l'altra quella da utilizzare casomai la prima fallisca.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file ImageManager_EagleProjects-0.0.1.tar.gz
.
File metadata
- Download URL: ImageManager_EagleProjects-0.0.1.tar.gz
- Upload date:
- Size: 3.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f121445cefa883bfc1b578bf23058dad6dbbe7ef39105c53e58e09b639ae5cea |
|
MD5 | 0f80acb67b0335c2c6e91d42c31e11f0 |
|
BLAKE2b-256 | e354f0964adb5188ec6fc638b3b2778d3f181d8576b4f548bb9f4cd55682aaeb |
File details
Details for the file ImageManager_EagleProjects-0.0.1-py3-none-any.whl
.
File metadata
- Download URL: ImageManager_EagleProjects-0.0.1-py3-none-any.whl
- Upload date:
- Size: 4.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6fed6591c1d69778358997b459a9c0f8f4563223cae79cbdd6957b3eedc401a0 |
|
MD5 | 120b981d9058c4dad3cf2b8e93c332a7 |
|
BLAKE2b-256 | a80bd0116ce06fbf8b86644375c7a47256c05e92fa8d06ee643863e4a979bd5f |