Pubblico con colpevole ritardo una nuova versione dello script per scaricare le registrazioni Faucet. La versione 2.3 è opera di Fabio Oleari, a cui vanno i dovuti ringraziamenti e di cui pubblico la mail che mi ha inviato insieme al nuovo script, sperando che la cosa non gli dispiaccia.
Occhio agli apici e ad altri caratteri particolari che WordPress potrebbe aver sputtanato in fase di copia/incolla
Ho iniziato ad usare il tuo script da poco ma ho riscontrato alcuni problemi, così mi sono messo a studiarlo un po’. Il problema che ho riscontrato più volte è il seguente: se si spegne la macchina mentre è in esecuzione lo script, questo lascia il file di controllo “download.run” e quindi successivamente non si avvia più. Questo può essere un problema se si lascia lo script in cron perché non ci si rende conto se effettivamente funziona oppure no. Ho deciso così di modificarlo. Ti elenco alcune modifiche che ho fatto e che cmq trovi commentate all’interno del file.
- I file di controllo dello script secondo me è più elegante se risiedono in una sottocartella (ed esempio “configs”) della cartella di esecuzione dello script. Ad esempio io ho la cartella /root/scripts/faucetpvr dove tengo lo script, di conseguenza i miei file di controllo sono sotto /root/scripts/faucetpvr/configs. I video scaricati risiedono da tutt’altra parte. Così ho aggiunto qualche riga di codice che individua il path di esecuzione dello script e posiziona i file di controllo sotto path/configs. Questa opzione è bypassabile se si imposta il parametro CONFDIR all’interno dello script.
- Quale che sia la cartella con i file di controllo, se la directory non viene trovata, lo script la crea.
- Ho riscritto lo script con l’utilizzo di funzioni.
- Ho aggiunto alcuni parametri che si devono passare allo script (se si lancia senza parametri stampa l’help):
-d per effettuare il download
-r per resettare lo script (dettagli dopo)
-h per stampare l’help- Funzione di reset. Questa funzione cancella i file di controllo (a parte il file con le informazioni riguardo i file già scaricati, ovviamente) ed è utile nel caso che ti ho descritto prima, ovvero una interruzione brusca dello script. Chiamando lo script con l’opzione -r all’avvio del pc, ad esempio, ci si mette al riparo da problemi e lo script sarà in grado di partire anche se prima fosse stato interrotto bruscamente.
- Ho aggiunto alcune funzioni per formattare l’output a video dello script, in caso di errori.
- La funzione “download” è rimasta inalterata, salvo che un paio di istruzioni che ho aggiunto. Nella sezione “Scarica i file” ho aggiunto due variabili:
- LFNAME=$(echo $LURL | awk -F”/” ‘{ print($NF); }’)
- LTITLE2=$(echo $LTITLE | awk -F”.” ‘{ print($1); }’)
Il primo contiene il nome originale del file, come fornito da faucet. Mentre il secondo contiene il nome che l’utente ha dato al file, esclusa l’estensione. Io ad esempio preferisco il file salvato con il nome originale, anche se in futuro mi piacerebbe aggiungere un parametro (o da passare allo script oppure interno) che permetta all’utente di decidere la formattazione del nome del file. Per esempio potrebbe essere carino salvare il file con un nome del tipo “<nome di fantasia>_<canale televisivo>_<data>.<estensione>”. Tutte queste informazioni sono facilmente prelevabili dai due parametri sopra.
Detto questo, ecco la versione 2.3 dello script da scaricare:




Pingback: ZicZac.it, clicca qui e vota questo articolo!
Pingback: notizieflash.com
Ho provato a scaricare il file ma ho riscontrato parecchi errori inspiegabili.
seguendo passo passo gli errori dalla shell ho provato a modificare il file: alcuni sono scomparsi eliminando tutte le righe vuote e gli spazi che erano in fondo alle righe, ma al momento mi sono incastrato su un errore che compare nel parsing alla fine della funzione download(), cioè:
line 243: errore di sintassi vicino il simbolo non atteso “}”
line 243: `}’
il numero di riga ovviamente non corrisponde, avendo eliminato tutte le righe vuote…
qualunque suggerimento è bene accetto
@Max:
Per prima cosa scaricarlo di nuovo, se i problemi non si risolvono spero che l’autore dello script possa aiutarti
gia provato a riscaricare, senza nessun risultato…
speriamo allora in un interessamento dell’autore
intanto proverò a fare girare una delle vecchie versioni, introducendo magari a mano le modifiche introdotte da fabio oleari
grazie comunque
@Max:
Di nulla, grazie a te per il beta-testing
aggiungo un commento solo per riportare che ho trovato che vcast ha pubblicato anche una api basata su json, con cui è possibile interrogare il database di faucet.
la cosa è interessante perché permette di interrogare il webservice con curl e quindi di usare le innumerevoli librerie di svariati linguaggi (php e python in primis) già presenti per manipolare i dati, ma ancora di più perché permette anche di inserire e modificare registrazioni.
appena ho un attimo di tempo provo a buttare giù due righe in python, dovrebbe essere possibile fare uno script con tutte le funzionalità anche senza impazzire troppo con il codice.
@Max:
Ottimo, se ne esce qualcosa di concreto e lo pubblichi da qualche parte, poi passa il link!
Ciao, ho scaricato l’ottimo script e volevo segnalare qualche problemino che ho corretto.
1- il file dello script é in formato dos/winwdos e tutti i fine riga su linux si vedono con un simpatico ^M
2- L’indirizzo del feed di faucet comincia con un pcast:// invece che con un http://. Bisogna quindi riscrivere la parte iniziale dell’url altrimenti nisba.
3- la funzione download() a un certo punto controllo lo spazio rimasto con il comando
SPAZIO=$(df -m “$DIR” | tail -1 | awk -F” ” ‘{ print($4); }’); che è corretto ma controlla lo spazio rimasto sulla directory sbagliata. La dir giusta da controllare è DESTDIR non DIR (cioé dove andranno i file scaricati, non i file di controllo) altrimenti se come me si hanno partizioni diverse, si controllo lo spazio rimasto sulla partizione sbagliata.
Spero di aver dato una mano. Lo script corretto è qui: http://dl.dropbox.com/u/630450/blog/faucet_download_24.tar.gz (con il mio feed e i miei path configurati)