Nicola D'Agostino (.net) - Articoli, traduzioni, grafica, web

Trucchiamo Firefox con Greasemonkey

Un’aggiunta per veri smanettoni a Firefox, che trasforma tutti in piccoli meccanici dei siti web: filtriamo, manipoliamo, aggiustiamo, integriamo, tutto grazie a Greasemonkey.

di Nicola D’Agostino

Greasemonkey è un’estensione per Firefox che ci permette di aggiungere pezzetti di html e javascript a qualsiasi pagina web che stiamo vedendo nel browser.
Nato nel 2004, Greasemonkey permette di prendere davvero il controllo del web, tanto per citare lo slogan di Firefox. Possiamo filtrare il contenuto o riscriverlo (volete tradurre tutto il testo in 3l337 speak? Nessun problema), aggiungere caratteristiche (mentre si guarda un libro su Amazon vediamo se costa di meno presso la concorrenza o se c’è in biblioteca) o toglierne (semplificare e rendere più veloce e navigabile una pagina eliminando dei pezzi) disabilitare protezioni (copiare il testo in Google Print ad esempio) ed altro ancora.

la home page di Greasemonkey

Le mani nel motore del web

Greasemonkey mischia hack, sfida di abilità creativa e perché no, utilità ed ha letteralmente folgorato l’immaginazione di tanti utenti e sviluppatori che negli scorsi mesi si sono rimboccati le maniche ed hanno realizzato decine e decine di script.
C’&egrave, chi lo paragona ai truccatori di motori e carburatori nei loro garage dove creano dei mostri personalizzati per divorare la strada. Non siamo lontani dalla realtà: Greasemonkey permette di aggiustare, rimixare, manipolare il web saltando a piè pari le imposizioni, le limitazioni e anche l’incapacità di chi spesso il web lo realizza.

Installiamolo

Prima di mettere in azione gli script dobbiamo installare in Firefox il "motore" che troviamo all’url http://greasemonkey.mozdev.org.

installazione del file .xpi di Greasemonkey

Basta fare click sul link "1. Installa Greasemonkey 0.5.3" e si installerà un file con estensione .xpi.
Chiudiamo e riapriamo il browser per attivare Greasemonkey e siamo pronti ad aggiungere tutti gli script che vogliamo.

Il sito che fa da archivio principale degli script pronti all’uso è http://userscripts.org in cui ne troviamo oltre 600, per gli usi più svariati, originali e assurdi. Molti sono classificati a seconda del tipo di funzionalità che implementano o del sito che offrono di modificare.

L'archivio di script per Greasemonkey

Per aggiungere uno script basta un click con il tasto destro sul link e poi scegliere "Install user Script" oppure si può visualizzare il sorgente e poi aggiungerlo richiamando "Install User Script" dalla voce di menù &quotTools" ("Strumenti" se avete Firefox in versione italiana)

Installazione dello script Unstyle che rimuove i CSS.

Gli script in azione

Ecco un trittico per cominciare a manipolare ciò che vediamo in Firefox.
"BetterDir" dà un’aggiustatina alle pagine generate da Apache 1.3 rendendo l’elenco delle directory un po’ meno laconico e brutto.
"Frownies" lo possiamo archiviare sotto "old skool" ed è dedicato a chi odia l’uso sfrenato di smiley grafici. Lo script infatti riconverte tutte le faccine grafiche nelle versioni (originarie) testuali.

Ancora più radicale è "Unstyle" che rimuove tutti gli stili CSS dalle pagine web.

Installazione dello script Unstyle che rimuove i CSS.

il sito web della nota testata News.com prima e dopo la cura con Unstyle

Sono parecchi anche i hack specifici per siti. Eccone due.

"eBay Hacks" mostra solo i feedback negativi per evitare utenti fedifraghi sul noto sito di aste. Lo script aggiunge due tab alle pagine con i profili per i commenti negativi e neutrali e ci evidenzia gli eventuali problemini che il venditore o compratore può aver avuto in passato.
"Remove redundant del.icio.us links" sottopone invece a una ferrea dieta le pagine del servizio di bookmark online rimuovendo tutti gli url doppi.

Come disattivare Greasemonkey

Ci sono dei casi in cui, nella veste di creatori di pagine web, possiamo non gradire che qualcuno pasticci con l’aspetto del nostro sito: o semplicemente perché Greasemonkey talvolta va in conflitto con il DOM (Document Object Model) facendo solo danni.
Per chi vuole inibire -speriamo sempre in buona fede- l’uso di Greasemonkey da parte dei visitatori in molti casi basta aggiungere poche righe di codice in Javascript all’html della propria pagina web.
Ecco un esempio usabile:

<script type="text/javascript">

document._createElement = document.createElement;
document.createElement = function(tagName, password) {
if (tagName != "SCRIPT" || password ==
"My scripts are OK!") {
return document._createElement(tagName);
}
};
</script>

Tutti dettagli della procedura (che però non funziona sempre) possono essere approfonditi sul sito di Dean Edwards, l’autore dell’hack.

Opera…Monkey?

Il successo di Greasemonkey è stato tale che si è guadagnato un primo imitatore eccellente: il browser multipiattaforma Opera, da sempre tecnicamente all’avanguardia.
Dalla versione 8.0 beta 3 del marzo 2005 si sono aggiunti gli "user scripts" con cui anche su questo browser l’utente può includere una libreria di funzioni Javascript da applicare alla pagina che stiamo vedendo. I fini sono gli stessi: rendere la navigazione migliore o più gradevole esteticamente o mettere una pezza a pagine che si vedono male o sono poco usabili.

Gli user script non sono attivati di default in Opera ma la procedura per farlo è semplice, come spiegata sul blog di un collaboratore della software house, Hallvord Steen. Basta modificare il file con estensione .ini di Opera (che in genere si chiama OperaX.ini -dove la X sta per la versione del programma) aggiungendo queste tre righe:


[User Prefs]
User JavaScript=1
User JavaScript File=c:\opera\user.js

Il path finale deve essere modificato per puntare allo script che vogliamo usare.

Come in Greasemonkey, l’uso di script in Opera puì avere effetti collaterali poco graditi (rallentamenti, crash, vulnerabilità) quindi raccomandiamo piedi di piombo e massima documentazione sull’hack che stiamo per applicare al browser.

Per approfondimenti

Dive Into Greasemonkey è LA guida online sul mondo delle estensioni di Greasemonkey. E’ aggiornata di continuo e liberamente scaricabile in vari formati tra cui HTML, PDF, puro testo e anche per palmari PalmOS.

Una versione di questo articolo è stata pubblicata su "Hackers Magazine" n. 30 del 11/2005