mercoledì, Gennaio 19, 2022
HomeProgrammazioneJavascriptCome creare uno script per GreaseMonkey

Come creare uno script per GreaseMonkey


Con questo post faremo un piccolo script per la modifica di pagine web al volo utilizzando la famosa estensione per Firefox e Chrome, parliamo di GreaseMonkey, per prima cosa scegliamo il nostro obiettivo, come sempre il primo passo è avere l’idea, e la nostra idea è molto semplice, andremo a rimuovere (in realtà li nascondiamo) i link da google.it nella home page, sia quelli sopra che i link sotto…
Una volta installata l’estensione e riavviato firefox, troverete una scimmia nella status bar, quella è Grease ora andiamo su google.it e facendo click con il tasto destro sulla scimmia, sceglie “new user script”, apparirà una finestra cosi:

Dopo aver riempito i campi come in figura, premiamo ok e vi aprirà uno file .js, bene è li che andiamo a inserire le nostre funzioni per modificare la pagina.

Per prima cosa inseriamo funzioni di utilità in questo caso si tratta soltanto della funzione $(), che ci servirà per selezionare un oggetto html tramite id che poi è tutto quello che ci serve poiché se andiamo a vedere bene il codice della pagina di Google possiamo notare che le sezioni che vogliamo rimuovere hanno un id il che semplifica molto il nostro lavoro.

   function $(id) {
       return document.getElementById(id);
   }

Notiamo nel codice di google che ci sono 2 elementi da rimuovere aventi id “gog” (la barra sopra) e “fctr” e “cpf” per il footer sotto, quindi iniziamo a scrivere 1 funzione per la rimozione dei div:

   function clearInterface(id) {
       return document.getElementById(id);
   }

Ok ora non resta che richiamare la funzione, ecco lo script completo:

// ==UserScript==
// @name           GLinkRemover
// @namespace      exborun
// @description    Rimuove i link superflui da google
// @include        http://www.google.it/
// ==/UserScript==

	function $(id) {
		return document.getElementById(id);
	}

	function clearInterface(){
		$('gog').style.display='none';
		$('fctr').style.display='none';
		$('cpf').style.display='none';
	}

	clearInterface();

Inoltre se vorrete rendere lo script funzionante su tutte le pagine google dovrete modificare il sito in “http://www.google.it/*” e aggiungere anche “http://www.google.it/*”, ecco infine come si presenta google il prima e il dopo grazie al nostro intervento.

Risultato finale

Come detto in precedenza questo è solo un esempio si può fare molto altro con la potenza di GreaseMonkey, e sono inoltre disponibili moltissimi script già pronti su userscripts.

Stefano
Sono un amante della tecnologia, appassionato di programmazione, marketing e videogames. Adoro sperimentare tutto ciò che la tecnologia ha da offrire.

9 Commenti

  1. ciao vorrei sapere come modificare l’url di pagine youtube.com/ecc.ecc in savemedia.com/ecc.ecc.
    grazie

  2. ciao volevo creare uno script x un gioco di facebook “kingdoms of camelot” per creare carte del trono…
    in pratica sono carte ke danno dei benefici a ki le possiede e mi piacerebbe crearle da me…
    tu riusciresti a farlo?

  3. ragazzi ma siccome sono un newbie, potreste gentilmente darmi una guida sulla programmazione javascript per greasemonkey ? c’è tanta roba per javascript sul web…ma a me interessa qualcosa per fare script !!! GRAZIE 😀

  4. Come posso modificare gli script x kingdoms of camelot?

  5. Sono un player di un famoso gioco di facebook “Kingdoms of Camelot”.
    E’ un gioco online e per aggiornare il database vanno fatti refresh continui.Il problema nasce qui!!Ogni tanto,dopo il refresh,mi appare una pagina,con la scelta del dominio a qui giocare,ed io vorrei che un semplice script mi cliccasse in automatico il dominio con qui giocavo prima del refresh.
    Se mi puoi aiutare questa è la pagina incriminata https://apps.facebook.com/kingdomsofcamelot/?page=nogame&s=385&lang=it

  6. ok grazie, ho provato lo script che mi hai dato nella pagina di facebook! ma forse non ho capito qualcosa perchè non vedo il button da nessuna parte! 😀 grazie e scusami per il tempo persoo!

    • hehe, perchè non era pensato per la pagina facebook, quel codice serve per creare un link in javascript per poi inserirlo dentro un altro elemento già esistente, per farlo funzionare su facebook devi trovare un elemento html in cui inserirlo sostituendo “idelementoacuiappenderelink”
      con l’id dell’elemento in cui vuoi inserire il link, un esempio potrebbe essere pageHead.

  7. Bello, lo provato a fare per facebook levando le pagine consigliate a destra e funziona!!
    bravissimooo!!
    ma come devo fare se io voglio aggiungere un bottone??
    ad esempio come quello sotto al video di youtube che permette di scaricare la canzone.
    ammettiamo che io voglia creare un bottone nella pagina iniziale di facebook come devo faree?? spero che tu mi risponda [non dare email in pubblico o verranno usate per spam]

    • è abbastanza semplice aggiungere un elemento in javascript ecco il codice per aggiungere un link:
      a_element = document.createElement(“a”);
      a_element.setAttribute(‘id’,’linkdownload’);
      a_element.setAttribute(‘href’,’https://www.bisontech.net/’);
      a_element.setAttribute(‘class’,’mylink’);
      a_element.innerHTML= ‘vai a BisonTech.’;
      document.getElementById(‘idelementoacuiappenderelink’).appendChild(a_element);

      Per aggiungere funzioni come quella di youtube, bisogna conoscere come genera le url per i video, spesso per funzioni simili si usano espressioni regolari per ricostruire il valore del link e generare poi l’url da metterci.

LASCIA UN COMMENTO

Per favore inserisci il tuo commento!
Per favore inserisci il tuo nome qui

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.

Most Popular