[Risolto]Mouse clicker?

Il ritrovo della comunità dove confrontarsi e discutere sulle notizie dal mondo dell'informatica, di Ubuntu e di tutto quello che la riguarda, novità, pettegolezzi e quant'altro.
Avatar utente
Ubuntello
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 588
Iscrizione: sabato 27 novembre 2010, 19:42

Re: Mouse clicker?

Messaggio da Ubuntello »

Ciao blackred,

personalmente seguirei il suggerimento di harpefalcata, che è valido per fare quello che chiedi (in attesa di altre possibili soluzioni). Sebbene “xdotool” non ti permetta di registrare i movimenti, ti permette di riprodurli, ottenendo quindi lo stesso risultato che avresti con i programmi che hai citato.

Per farti capire meglio, si tratta di:
  1. Creare un file con un nome del tipo “xdotool-tor.sh”, ovvero uno script.
  2. Aprire con un editor di testo questo file, dove si inseriranno le azioni da riprodurre con il comando xdotool.
  3. Avviare il programma “xev” da Terminale, e lasciando la finestra di terminale in primo piano, spostare la finestra di xev sopra gli elementi sui quali si vuole cliccare. Dopo averla posizionata, spostare il puntatore del mouse sulla finestra di xev, e appuntarsi le coordinate indicate nella penultima riga del terminale, dopo “root:” tra parentesi (queste serviranno per spostare il puntatore con il comando “xdotool mousemove” alle coordinate esatte).
  4. Dare i permessi di esecuzione al file, andando dalle proprietà nella scheda relativa ai permessi.
  5. Eseguire nel terminale lo script appena creato (e godersi il risultato ogni volta che lo si esegue). ;)
I comandi che ti servono sono i seguenti (includo anche quelli non essenziali, che però possono esserti utili):

Codice: Seleziona tutto

xdotool click 1               →  Esegue un click sinistro del mouse
xdotool click --repeat 2 1    →  Esegue un doppio click sinistro del mouse
xdotool key ctrl+c            →  Copia il testo selezionato
xdotool key ctrl+v            →  Incolla il testo
xdotool key KP_Enter          →  Pressione del tasto Invio
xdotool mousemove coordinate  →  Sposta il puntatore del mouse alle coordinate specificate
sleep numero                  →  Attende per il numero di secondi indicati (utile per dare il tempo a una pagina di caricarsi, ad esempio)
Alla fine, il contenuto del tuo file “xdotool-tor.sh” dovrebbe essere simile a questo:

Codice: Seleziona tutto

#!/bin/bash

# Quante volte ripetere le azioni indicate tra il do e il done?
numero=100

for ((i = 0; i < $numero; i++))
do
    xdotool mousemove 350 250
    xdotool click 1
    sleep 4
    xdotool mousemove 800 800
    xdotool click --repeat 2 1
    xdotool key ctrl+c
    xdotool mousemove 600 750
    xdotool click 1
    sleep 5
    xdotool mousemove 200 200
    xdotool click 1
    xdotool key ctrl+v
    xdotool key KP_Enter
done
I comandi che vedi tra il do e il done sono solo un esempio ovviamente, e dovrai sostituirli. Se vuoi che il tutto venga ripetuto 200 volte ad esempio, anziché 100, dovrai cambiare la riga “numero=100” in “numero=200”.

Spero di essere riuscito a farti capire come funziona. In ogni caso, se hai qualche amico con un minimo di esperienza nello scripting, te lo farà in un attimo seguendo queste istruzioni (in realtà è davvero semplice).

:ciao:
mednafen-it - Gruppo di utenti italiani dell'emulatore Mednafen | Retro games: hidden gems - top titles - genre guides | Recommended games | Configurazione giochi Windows: Wine Staging con esync (dalla 4.6), drive_c +F + DXVK + vkd3d-proton + patch force feedback e force-large-address-aware
blackred
Prode Principiante
Messaggi: 37
Iscrizione: domenica 23 ottobre 2016, 19:00
Sesso: Maschile

Re: Mouse clicker?

Messaggio da blackred »

Ubuntello [url=http://forum.ubuntu-it.org/viewtopic.php?p=4969889#p4969889][img]http://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto:Ciao blackred,

personalmente seguirei il suggerimento di harpefalcata, che è valido per fare quello che chiedi (in attesa di altre possibili soluzioni). Sebbene “xdotool” non ti permetta di registrare i movimenti, ti permette di riprodurli, ottenendo quindi lo stesso risultato che avresti con i programmi che hai citato.

Per farti capire meglio, si tratta di:
  1. Creare un file con un nome del tipo “xdotool-tor.sh”, ovvero uno script.
  2. Aprire con un editor di testo questo file, dove si inseriranno le azioni da riprodurre con il comando xdotool.
  3. Avviare il programma “xev” da Terminale, e lasciando la finestra di terminale in primo piano, spostare la finestra di xev sopra gli elementi sui quali si vuole cliccare. Dopo averla posizionata, spostare il puntatore del mouse sulla finestra di xev, e appuntarsi le coordinate indicate nella penultima riga del terminale, dopo “root:” tra parentesi (queste serviranno per spostare il puntatore con il comando “xdotool mousemove” alle coordinate esatte).
  4. Dare i permessi di esecuzione al file, andando dalle proprietà nella scheda relativa ai permessi.
  5. Eseguire nel terminale lo script appena creato (e godersi il risultato ogni volta che lo si esegue). ;)
I comandi che ti servono sono i seguenti (includo anche quelli non essenziali, che però possono esserti utili):

Codice: Seleziona tutto

xdotool click 1               →  Esegue un click sinistro del mouse
xdotool click --repeat 2 1    →  Esegue un doppio click sinistro del mouse
xdotool key ctrl+c            →  Copia il testo selezionato
xdotool key ctrl+v            →  Incolla il testo
xdotool key KP_Enter          →  Pressione del tasto Invio
xdotool mousemove coordinate  →  Sposta il puntatore del mouse alle coordinate specificate
sleep numero                  →  Attende per il numero di secondi indicati (utile per dare il tempo a una pagina di caricarsi, ad esempio)
Alla fine, il contenuto del tuo file “xdotool-tor.sh” dovrebbe essere simile a questo:

Codice: Seleziona tutto

#!/bin/bash

# Quante volte ripetere le azioni indicate tra il do e il done?
numero=100

for ((i = 0; i < $numero; i++))
do
    xdotool mousemove 350 250
    xdotool click 1
    sleep 4
    xdotool mousemove 800 800
    xdotool click --repeat 2 1
    xdotool key ctrl+c
    xdotool mousemove 600 750
    xdotool click 1
    sleep 5
    xdotool mousemove 200 200
    xdotool click 1
    xdotool key ctrl+v
    xdotool key KP_Enter
done
I comandi che vedi tra il do e il done sono solo un esempio ovviamente, e dovrai sostituirli. Se vuoi che il tutto venga ripetuto 200 volte ad esempio, anziché 100, dovrai cambiare la riga “numero=100” in “numero=200”.

Spero di essere riuscito a farti capire come funziona. In ogni caso, se hai qualche amico con un minimo di esperienza nello scripting, te lo farà in un attimo seguendo queste istruzioni (in realtà è davvero semplice).

:ciao:
purtroppo non conosco nessuno in grado di fare uno script cosi... e cimentarmi io mi sembra molto macchinoso :/ vorrei provare ad installare virtualbox e avviare windows da la e poi sempre da la scaricare uno di quei mouse auto click e registrazione e farlo da la ;)
Avatar utente
Ubuntello
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 588
Iscrizione: sabato 27 novembre 2010, 19:42

Re: Mouse clicker?

Messaggio da Ubuntello »

blackred [url=http://forum.ubuntu-it.org/viewtopic.php?p=4971818#p4971818][img]http://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto: purtroppo non conosco nessuno in grado di fare uno script cosi... e cimentarmi io mi sembra molto macchinoso :/ vorrei provare ad installare virtualbox e avviare windows da la e poi sempre da la scaricare uno di quei mouse auto click e registrazione e farlo da la ;)
Eventualmente lo script potrei fartelo io stesso tramite desktop remoto. L'unico requisito è che il tuo router ti permetta di aprire la porta TCP 5900 (reindirizzandola al tuo computer), e che vengano messi i segni di spunta come mostrato in questa immagine nelle preferenze del desktop remoto.
In caso ci si può mettere d'accordo tramite chat, se per te va bene; altrimenti vai con VirtualBox, se preferisci.

:ciao:
mednafen-it - Gruppo di utenti italiani dell'emulatore Mednafen | Retro games: hidden gems - top titles - genre guides | Recommended games | Configurazione giochi Windows: Wine Staging con esync (dalla 4.6), drive_c +F + DXVK + vkd3d-proton + patch force feedback e force-large-address-aware
blackred
Prode Principiante
Messaggi: 37
Iscrizione: domenica 23 ottobre 2016, 19:00
Sesso: Maschile

Re: Mouse clicker?

Messaggio da blackred »

Ubuntello [url=http://forum.ubuntu-it.org/viewtopic.php?p=4972107#p4972107][img]http://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto:
blackred [url=http://forum.ubuntu-it.org/viewtopic.php?p=4971818#p4971818][img]http://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto: purtroppo non conosco nessuno in grado di fare uno script cosi... e cimentarmi io mi sembra molto macchinoso :/ vorrei provare ad installare virtualbox e avviare windows da la e poi sempre da la scaricare uno di quei mouse auto click e registrazione e farlo da la ;)
Eventualmente lo script potrei fartelo io stesso tramite desktop remoto. L'unico requisito è che il tuo router ti permetta di aprire la porta TCP 5900 (reindirizzandola al tuo computer), e che vengano messi i segni di spunta come mostrato in questa immagine nelle preferenze del desktop remoto.
In caso ci si può mettere d'accordo tramite chat, se per te va bene; altrimenti vai con VirtualBox, se preferisci.

:ciao:
direi che ho "risolto" scaricando virtualbox e installando su macchina virtuale la iso di windows 7 e a sua volta ho scaricato uno di quei programmi per windows che ripetono i movimenti e click col mouse, certo l'ideale era che uno di quei programmi girasse su linux ma niente da fare si avviano ma o non cliccano oppure non si spostano dalla finestra del programma,cosa assai strana :o fortuna che ho risolto con virtual :D
Avatar utente
giulux
Amministratore
Amministratore
Messaggi: 25441
Iscrizione: domenica 10 gennaio 2010, 12:17
Desktop: ubuntu 18.04
Distribuzione: Ubuntu 18.04.3 LTS x86_64
Sesso: Maschile
Località: Roma

Re: Mouse clicker?

Messaggio da giulux »

Se ritieni risolto modifica il titolo del primo post mettendoci davanti [Risolto].

Se vuoi puoi installare questo script che aggiunge un pulsante per mettere [Risolto] con un solo click.
Ciao.
"Non è una segno di buona salute l'essere ben adattato ad una società malata". (Jiddu Krishnarmurti)
blackred
Prode Principiante
Messaggi: 37
Iscrizione: domenica 23 ottobre 2016, 19:00
Sesso: Maschile

Re: Mouse clicker?

Messaggio da blackred »

giulux [url=http://forum.ubuntu-it.org/viewtopic.php?p=4972126#p4972126][img]http://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto:Se ritieni risolto modifica il titolo del primo post mettendoci davanti [Risolto].

Se vuoi puoi installare questo script che aggiunge un pulsante per mettere [Risolto] con un solo click.
Ciao.
Va bene metto risolto anche se è un risolto non del tutto vero,ma se qualcuno scoprirà quella programma apposito per ciò che cercavo ben venga :D
blackred
Prode Principiante
Messaggi: 37
Iscrizione: domenica 23 ottobre 2016, 19:00
Sesso: Maschile

Re: Mouse clicker?

Messaggio da blackred »

tomm [url=http://forum.ubuntu-it.org/viewtopic.php?p=4969176#p4969176][img]http://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto:
xmacroplay: could not open display ":1", aborting.
come posso risolvere?
Errore mio, il comando corretto è:

Codice: Seleziona tutto

xmacroplay -d 100 $DISPLAY < ~/xmacro_actions
se l'azione registrata volessi ripeterla 100 volte cosa devo aggiungere ? come lo scrivo il commando? :D
blackred
Prode Principiante
Messaggi: 37
Iscrizione: domenica 23 ottobre 2016, 19:00
Sesso: Maschile

Re: Mouse clicker?

Messaggio da blackred »

giulux [url=http://forum.ubuntu-it.org/viewtopic.php?p=4972126#p4972126][img]http://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto:Se ritieni risolto modifica il titolo del primo post mettendoci davanti [Risolto].

Se vuoi puoi installare questo script che aggiunge un pulsante per mettere [Risolto] con un solo click.
Ciao.
ciao, si ho chiesto anche in questa discussione una domanda su xmacro ma poiché qua avevo risolto e il posto era su un mouse clicker e non su xmacro ho aperto un nuovo topic che mi hai chiuso...
Avatar utente
Ubuntello
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 588
Iscrizione: sabato 27 novembre 2010, 19:42

Re: [Risolto]Mouse clicker?

Messaggio da Ubuntello »

Puoi vedere se xmacroplay prevede un'opzione per ripetere l'azione (guardando il risultato del comando “xmacroplay --help” o “xmacroplay -h”), oppure puoi dare il comando in questo modo:

Codice: Seleziona tutto

for ((i = 0; i < 100; i++)); do xmacroplay -d 100 $DISPLAY < ~/xmacro_actions; done
Il risultato è sempre quello di ripetere l'azione registrata 100 volte, ma ovviamente così la riga di comando è più lunga.
mednafen-it - Gruppo di utenti italiani dell'emulatore Mednafen | Retro games: hidden gems - top titles - genre guides | Recommended games | Configurazione giochi Windows: Wine Staging con esync (dalla 4.6), drive_c +F + DXVK + vkd3d-proton + patch force feedback e force-large-address-aware
blackred
Prode Principiante
Messaggi: 37
Iscrizione: domenica 23 ottobre 2016, 19:00
Sesso: Maschile

Re: [Risolto]Mouse clicker?

Messaggio da blackred »

Ubuntello [url=http://forum.ubuntu-it.org/viewtopic.php?p=4975925#p4975925][img]http://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto:Puoi vedere se xmacroplay prevede un'opzione per ripetere l'azione (guardando il risultato del comando “xmacroplay --help” o “xmacroplay -h”), oppure puoi dare il comando in questo modo:

Codice: Seleziona tutto

for ((i = 0; i < 100; i++)); do xmacroplay -d 100 $DISPLAY < ~/xmacro_actions; done
Il risultato è sempre quello di ripetere l'azione registrata 100 volte, ma ovviamente così la riga di comando è più lunga.
Gentilissimo ti ringrazio la ripetizione funziona perfettamente :D però devo chiederti un ultima rottura :D ovvero, se tra un click e l'altro voglio un intervallo di tempo di 15 secondi come imposto la stringa? aiutami anche in questo ti pregooo :birra:
Avatar utente
UbuNuovo
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 4457
Iscrizione: sabato 12 dicembre 2009, 20:58
Desktop: Mate
Distribuzione: Ubuntu Mate 22.04.1 LTS
Sesso: Maschile
Contatti:

Re: [Risolto]Mouse clicker?

Messaggio da UbuNuovo »

Se ho capito bene. vuoi eseguire il comando nel ciclo ogni 15 secondi?
Se così basta inserire sleep N', nel punto in cui si vuole la pausa ( 'N' è un numero intero che rappresenta i secondi), per esempio:

Codice: Seleziona tutto

for ((i = 0; i < 100; i++)); do xmacroplay -d 100 $DISPLAY < ~/xmacro_actions; sleep 15; done
Salva l'Ucraina! 🇺🇦
Avatar utente
Ubuntello
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 588
Iscrizione: sabato 27 novembre 2010, 19:42

Re: [Risolto]Mouse clicker?

Messaggio da Ubuntello »

Se vuoi che venga aggiunta una pausa dopo ogni singolo click che hai registrato in xmacro_actions, copia e incolla queste righe nel Terminale e dai Invio:

Codice: Seleziona tutto

secondi=15
file="$HOME/xmacro_actions"

if grep -q Delay "$file"; then
    sed -i "s/Delay [0-9][0-9]*/Delay $secondi/" "$file"
else
    sed -i "s/ButtonRelease 1/&\nDelay $secondi/" "$file"
fi
In questo modo dopo ogni click (con il primo bottone del mouse) il programma aspetterà 15 secondi come hai chiesto. È sufficiente eseguire il codice una sola volta, ma se vorrai cambiare il numero di secondi, basta che lo esegui nuovamente sostituendo “secondi=15” con “secondi=12”, ad esempio (e così verrà impostato a 12 secondi).

Nota: non ho suggerito di impostare i secondi con l'opzione “-d” perché questa ha effetto su tutti gli eventi registrati.

Un piccolo consiglio: quando non è necessaria una citazione, meglio evitare di rispondere con il bottone “Cita”; quando non c'è bisogno, clicca invece sul bottone “Rispondi” in basso, oppure su “Risposta rapida” (citare è utile, ma quando non è necessario crea solo confusione). ;)

:ciao:
mednafen-it - Gruppo di utenti italiani dell'emulatore Mednafen | Retro games: hidden gems - top titles - genre guides | Recommended games | Configurazione giochi Windows: Wine Staging con esync (dalla 4.6), drive_c +F + DXVK + vkd3d-proton + patch force feedback e force-large-address-aware
blackred
Prode Principiante
Messaggi: 37
Iscrizione: domenica 23 ottobre 2016, 19:00
Sesso: Maschile

Re: [Risolto]Mouse clicker?

Messaggio da blackred »

UbuNuovo [url=http://forum.ubuntu-it.org/viewtopic.php?p=4976035#p4976035][img]http://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto:Se ho capito bene. vuoi eseguire il comando nel ciclo ogni 15 secondi?
Se così basta inserire sleep N', nel punto in cui si vuole la pausa ( 'N' è un numero intero che rappresenta i secondi), per esempio:

Codice: Seleziona tutto

for ((i = 0; i < 100; i++)); do xmacroplay -d 100 $DISPLAY < ~/xmacro_actions; sleep 15; done
si esatto chiedevo proprio ciò,ti ringrazio provato e funziona :))
Scrivi risposta

Ritorna a “Bar Ubuntu”

Chi c’è in linea

Visualizzano questa sezione: Google [Bot], jeremie2 e 8 ospiti