iMacros di iOpus é un prodotto interessante che potete scaricare da questo link.
Trattasi di un software disponibile come extension di Firefox e come applicazione/plugin per Windows/Internet Explorer.
Il mio consiglio e’ di usare la versione freeware per Firefox.

Se esiste un’attività che dovete fare ripetitivamente su Web, potete registrarla con iMacros. Il risultato della registrazione é una macro che potete, successivamente, eseguire quante volte volete, cliccando su un tasto.
Attraverso le macro é possibile riempire automaticamente i formulari web, ricordare le password e scaricare le informazioni da altri siti, fare scraping sul web ed altre operazioni ancora.

Un punto di forza di questo software é che esso codifica la macro in un linguaggio di programmazione semplice, inoltre, il codice generato é memorizzato in un file testo editabile e che potete condividere con una comunità di utenti.

Esaminiamo assieme una macro. Lascio alla vostra fantasia capire cosa automatizza questa macro….

Linea di codice autogenerata. (1)
1: VERSION BUILD=6020205 RECORDER=FX

Seleziona TAB/Scheda 1 del browser. (2)
2: TAB T=1

File sorgente contenente i dati da usare per il popolamento della form. (3)
3: SET !DATASOURCE c:\Temp\baccounts.csv

Ogni riga del file contiene 3 voci separate da virgola. Il file sorgente é un file CSV ogni riga é costituita da una sequenza di voci o colonne separate da virgola. (4)
4: SET !DATASOURCE_COLUMNS 3

Il file può contenere più righe. Ogni riga corrisponde ad un insieme di dati da usare per la form.
La macro può essere avviata in modalità PLAY LOOP ed essere applicata iterativamente alle sequenza di righe contenute nel file sorgente. (5)
5: SET !DATASOURCE_LINE {{!LOOP}}

Il tempo massimo di attesa (espresso in secondi) che iMacros attenderà per il caricamento di una pagina web. (6)
6: SET !TIMEOUT 180

Rimuove cookies e pulisce la cache. (7)
7:CLEAR

Url a cui accedere. L’url é mascherata per ovvie ragioni. (8)
8: URL GOTO=https://www.??????.com/accounts/NewAccount?service=??????.....

Popola i campi “Indirizzo Email” e “Immetti nuovamente indirizzo email” con il valore della prima colonna della riga corrente. (9,10,11)
9:TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:createaccount ATTR=NAME:Email CONTENT={{!COL1}}
10: TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:createaccount ATTR=NAME:Email2 CONTENT={{!COL1}}

Popola i campi “Immetti Password” e “Immetti nuovamente password” con il valore della seconda colonna della riga corrente. (11,12,13)
11: SET !ENCRYPTION NO
12: TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:createaccount ATTR=NAME:Passwd CONTENT={{!COL2}}
13: TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:createaccount ATTR=NAME:PasswdAgain CONTENT={{!COL2}}

Popola il campo “Nome Visualizzato” della form con il valore della terza colonna della riga corrente. (14)
14: TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:createaccount ATTR=NAME:displayname CONTENT={{!COL3}}

Attende 10s prima di proseguire. Questo tempo é sufficiente per la visualizzazione completa del codice captcha. (15)
15: WAIT 10

Richiede all’utente di scrivere il codice captcha visualizzato. (16)

16: PROMPT Please<SP>enter<SP>captcha: !VAR1

Popola il campo “Verifica parola” della form con il valore inserito dall’utente. (17)
17: TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:createaccount ATTR=ID:newaccountcaptcha CONTENT={{!VAR1}}

Seleziona checkbox per Agreement. (18)
18: TAG POS=1 TYPE=INPUT:CHECKBOX FORM=NAME:createaccount ATTR=NAME:termsofservice CONTENT=YES

Click su pulsante “Continua”. (19)
19: TAG POS=1 TYPE=SPAN ATTR=TXT:Continue

Questa stessa macro può essere potenziata ulteriormente. Non c’é limite. Il vantaggio é che la procedura é facile da controllare ed adattare ai cambiamenti dei siti target.
Per concludere, l’esecuzione della macro può essere incapsulata, mediante apposite librerie, in codice PHP, Java o VB. Questa ultima soluzione permette di svincolare dal browser l’esecuzione della macro e realizzare delle vere e proprie applicazioni.