Un paio di mesi fa, avevo preparato uno script per scaricare automaticamente le proprie registrazioni da Faucet/Vcast, ottimo servizio di registrazione online. Si trattava di una prima versione, abbastanza grezza, che però mi era tornata utile per non dovermi ricordare ogni giorno di controllare il sito.

Nei commenti al post, erano emerse diverse funzionalità interessanti da aggiungere allo script: dopo averci lavorato un po’, ho quindi partorito una seconda versione. Oltre a implementare le idee emerse nei commenti alla versione precedente, risolve anche alcuni problemi che ho avuto.


NUOVE FUNZIONALITA’:

  • Il nome dei file scaricati corrisponde ora al titolo che si è dato alla registrazione su Faucet (su idea di Koko e bl4d3)
  • E’ possibile impostare, nei parametri dello script, un limite minimo di spazio da lasciare libero su disco. Questo limite considera già le dimensioni del file da scaricare: se ad esempio abbiamo 1Gb di spazio su disco e impostiamo un limite di 600Mb da tenere liberi, verranno scaricati fino a 400Mb di dati. Ho inserito questo controllo perchè mi è successo che, lasciando il PC “da solo” per qualche giorno e non avendo un disco capiente sul server, mi sono ritrovato con il disco pieno e diversi problemi (essendo anche mail/web/dns server casalingo)


FUNZIONALITA’ NON IMPLEMENTATE O FUTURE:

  • Ho preferito mantenere i parametri nella prima parte del codice anzichè prenderli da linea di comando: considerato che si tratta di valori che non vengono modificati spesso, mi sembra più semplice impostarli una prima volta nello script per poi essere liberi di lanciarlo senza doversi ricordare la sintassi. Per chi preferisse avere i parametri da linea di comando, la personalizzazione è comunque veramente semplice.
  • Essendoci il controllo dello spazio su disco prima del download, sarebbe interessante inserire anche un sistema di notifica (via e-mail mi sembra la cosa più semplice) nel momento in cui un file non viene scaricato per mancanza di spazio. In questo modo si può intervenire subito ed evitare che il file sparisca da Faucet prima di accorgersi del problema. A questo penserò nella prossima versione.


LINK UTILI E DOWNLOAD:


Ti è piaciuto l'articolo, eh? OFFRIMI UNA BIRRA! (è sufficiente essere iscritti a Paypal o avere una carta di credito, anche Postepay)

Condividi :
  • Facebook
  • Twitter
  • FriendFeed
  • OKNotizie
  • Fai.Info
  • Diggita
  • ZicZac
  • Upnews
  • NotizieFlash
  • Wikio IT
  • del.icio.us
  • StumbleUpon
  • Technorati
  • Netvibes
Ti è piaciuto l'articolo? Vota Ok oppure No. Grazie Mille!

Puoi votare l'articolo anche qui, gli articoli precedenti qui.

Articoli consigliati...

16 commenti per questo articolo

  1. 12/02/2008, 21:41Alessandro Gervaso (permalink)

    Non si usano i backticks, sono deprecated!
    Sostituiscili immediatamente con $()

  2. 12/02/2008, 22:01Matteo (permalink)

    @Alessandro:
    Per questa volta ti dò ragione, perchè sono un signore. Ho corretto :)

  3. 21/04/2008, 19:25Golf (permalink)

    ciao Matteo!
    intanto complimenti per l’idea e lo script!
    ho provato ad eseguirlo su Ubuntu Server 7.10 (server casalingo) dopo aver modificato ‘FEED’ e ‘DIR’ e averlo reso eseguibile. Se
    lo lancio in manuale con ’sh ./faucet_download_20.sh’, leggo questo:
    : not foundwnload_20.sh: 2:
    : not foundwnload_20.sh: 9:
    : not foundwnload_20.sh: 16:
    : not foundwnload_20.sh: 17:
    : not foundwnload_20.sh: 19:
    : not foundwnload_20.sh: 20:
    : not foundwnload_20.sh: 25:
    : not foundwnload_20.sh: 26:
    : not foundwnload_20.sh: 37:
    : not foundwnload_20.sh: 38:
    ./faucet_download_20.sh: 89: Syntax error: word unexpected (expecting “do”)
    Forse ho sbagliato qualcosa?
    ciao e grazie…
    Mario

  4. 21/04/2008, 20:12Matteo (permalink)

    @Golf:
    Mi sembrano errori strani, prova a ripetere la procedura facendo attenzione a lasciare i doppi apici tra i valori di FEED e DIR e a non modificare nient’altro.

    Assicurati inoltre che il feed che inserisci sia corretto e che la directory di destinazione esista sul tuo sistema.

  5. 24/11/2008, 09:41Anonimo (permalink)

    Piccola modifica:
    alla riga 42:
    if [ ! -z "`ps ae | grep wget | grep vcast`" ];

    anzichè:

    if [ -e "$DIR/$CONTROLLO" ]

    così si evitano zombie.

  6. 24/11/2008, 15:38Matteo (permalink)

    @Anonimo:
    Grazie del consiglio! ;)

  7. 31/12/2008, 19:22Marco (permalink)

    Ma come posso avere via RSS le mie registrazioni di FaucetPVR?

    Grazie.

  8. 01/01/2009, 12:15Matteo (permalink)

    @Marco:
    Facendo login dentro faucet, nella barra degli indirizzi compare la classica icona del feed RSS. In alternativa, trovi anche il link nel codice della pagina, nella sezione <head>.

  9. 03/01/2009, 09:04Marco (permalink)

    @Matteo
    Ooops… Mi sa che ho davvero bisogno di un po’ di ferie… :-(
    Ho provato stanotte il tuo script e sembra andare alla grande.
    Perché non consideri, però, un po’ di “verbosità” durante l’esecuzione? Così se lo si esegue non tramite crontab si sa che cosa sta facendo, a quanto sta scaricando wget, che file sta scaricando, etc.

  10. 03/01/2009, 10:37Matteo (permalink)

    @Marco:
    Non considero l’idea di aggiungere un po’ di “verbosità” proprio perché l’ho scritto per essere lanciato attraverso cron. :-P

  11. 03/01/2009, 10:44Marco (permalink)

    E vabbeh… Visto che è GPLv2, ci penso io :D

  12. 03/01/2009, 11:07Matteo (permalink)

    @Marco:
    Questo è lo spirito giusto! :)

  13. 27/03/2009, 17:34effemmeffe (permalink)

    Piccola patch da nulla: sostituendo la linea dove è fatta la chiamata a wget con la seguente:
    wget -q -c -O “$DESTDIR/$LTITLE” “$LURL” > /dev/null 2>&1
    e aggiungendo ai parametri iniziali la variabile:
    DESTDIR=”/home/effemmeffe/scaricati”
    si possono tenere tutti i file di controllo in una directory e i file scaricati in un’altra.
    Ora non mi resta da capire come mai su OS X non funzioni poi sono a posto…

  14. 27/03/2009, 17:48Matteo (permalink)

    effemmeffe:
    Grazie per la patch, nel weekend faccio qualche test e poi la pubblico :)

  15. 12/05/2009, 00:21mikosh (permalink)

    bello script! complimenti!
    l’unica cosa è che su mac os x da problemi il comando tail (e head) con l’opzione –lines=xxx…
    per farlo funzionare basta sostituire quell’opzione (tutte le volte che appare) con -x
    ad esempio, la riga
    tail –lines=$T $DIR/$TITLE > $DIR/$TITLE.tmp
    diventa
    tail -$T $DIR/$TITLE > $DIR/$TITLE.tmp

    ciao a tutti

  16. 12/05/2009, 00:31Matteo (permalink)

    @mikosh:
    Grazie per il contributo, mi avevano mandato una versione funzionante su OSX circa un mese fa e mi è completamente sfuggito di pubblicarla. Chiedo pubblicamente scusa e mi impegno a farlo domani!

Indirizzo per il trackback | Segui i commenti a questo articolo

Partecipa alla discussione:

Feed RSS Commenti Segui la discussione via RSS! Non sai cos'è un feed RSS? GUARDA QUA!

C'è qualcuno che parla di questo articolo?

  1. 12/02/2008, 08:13diggita.it (permalink)

Indirizzo per il trackback | Segui i commenti a questo articolo



Additional comments powered by BackType