piccolo script per vedere tutti i video di determinati canali di youtube

ho realizzato questo script per una mia esigenza.
mi serviva poter seguire delle video guide dal canale del muflone e di NiktortheNat, e se li visualizzavo con il browser a tutto schermo, dopo un po’, come tutti gli utilizzatori di Gnu/Linux sanno, mi esplodeva il pc 🙂 .
allora ho realizzato questo script (potete scaricarlo da qui: http://paste.ubuntu.com/576051/)
Lo script dipende da VLC e da youtube-dl che dovete scaricare da qui:
http://www.megaupload.com/?d=NPE4Z85R o da qui: http://www.box.net/shared/8u2minhh3g
lo si installa estraendolo in /usr/bin (se avete già un youtube-dl installato rinominatelo youtube-dl.old) e poi estraete il “mio” youtube-dl in /usr/bin
altrimenti non funziona con la versione originale di youtube-dl
potete aggiungere tutti i canali che volete, basta mettere quando richiesto il nome del canale.
script:
##################

#!/bin/bash -x
#programma per visualizzare tutti i video dei canali di youtube :
#canali di esempio
#+ nome da aggiungere: NiktorTheNat
#sito: http://tanadelpitone.tk/
#il Muflone
#nome da aggiungere: muflube
#+http://ubuntrucchi.wordpress.com/
# script realizzato da c.realkiller
# email <dino.tartaro@gmail.com>
# nome da aggiungere (per il mio canale): dino1tartaro
#sito: https://tdinox.wordpress.com/
# dipendenze VLC media player 1.1. => , youtube-dl (che dovete scaricare da qui: http://www.megaupload.com/?d=NPE4Z85R altrimenti non funziona)
#puoi registrare il video che stai vedendo andando su VLC > visualizza > controlli aggiuntivi > e spuntare la casella 
#apparirà il pulsante rosso REC sopra al pulsante Play
#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
DIR=$HOME/.getlink
if [ ! -d "$DIR" ]; then
	mkdir -p "$DIR"
fi
cd $DIR
if [  -e .getlink.tmp ]; then
	rm -f .getlink.tmp
fi
zenity --entry --title="getlink" --text="Vuoi aggiungere un canale?" >> .name.db
CH=`cat .name.db`
Channel=`zenity --list --height=200 --width=150 --title=getlink --text="Scegli il canale da vedere" --column="Seleziona" $CH`
if [ $? = 1 ]; then
	exit 0
fi
TotVid=`wget "http://m.youtube.com/profile?gl=IT&client=mv-google&hl=it&user=$Channel&view=videos&p=1" -O - | grep -o "Video ([^)]*" | sed 's/Video (//g'`
let "PageN = $TotVid / 10"
PageN=$(($PageN + 1))
let "INC = 100 / $PageN"
(for i in `seq 1 $PageN`; do
	wget "http://m.youtube.com/profile?gl=IT&client=mv-google&hl=it&user=$Channel&view=videos&p=$i" -O - 2>/dev/null | grep \
	-o '&amp;v=[^*]*' | sort \
	-u | awk -F\; '{print $NF}' | sed \
	-e 's#"># #g'\
	-e 's#</a>##g' \
	-e 's#" />##g' \
	-e '/^$/d' \
	-e 's#^#http://www.youtube.com/watch?#g' \
	-e 's#^#"#;s#$#"#;s# #"\n"#' \
	-e 's# #-#g' >> .getlink.tmp &
	sleep 0.4
	let "COUNT= $INC * $i"
 	echo "$COUNT" |  awk -F \. '{print $1}'
done) | zenity --progress --title="getlink" --text="Download LInk..." --auto-close --auto-kill
sleep 3
Sel=`cat .getlink.tmp`
while (true); do
Link=`zenity --list --height=500 --width=550 --title="getlink" --text="Clicca sull'URL sopra al video scelto" --column="Seleziona" $Sel | grep -o "http://www.youtube.com/watch?v=[^<]*"`
if [ $? = 1 ]; then
	exit 0
	fi
	Title=`youtube-dl -e $Link`
	youtube-dl $Link -o "$Title" &
	(for n in `seq 1 10`; do
	let "t= $n * 10"
	sleep 1
	echo $t
	done ) | zenity --progress --title="getlink" --text="Buffering..." --auto-close --auto-kill
	if [ $? = 1 ]; then
		break
		fi
	vlc "$Title"
	kill `ps aux | grep youtube-dl | grep -v grep | awk '{print $2}'`
	zenity --question --title="getlink" --text="Vuoi conservare il video?"
	if [ $? = 1 ]; then
			rm -f "$Title"
			else
			mv "$Title" ~/
			zenity --info --title="getlink" --text="Video salvato in $HOME" 
			fi
done
exit 0
Annunci

7 pensieri su “piccolo script per vedere tutti i video di determinati canali di youtube

    1. per adesso l’unico modo è di aprire il file .name.db con gedit (o l’editor che vuoi) e cancellare il nome del canale che vuoi eliminare.
      il file si trova nella cartella nascosta .getlink che è nella Home dell’utente usato.

      gedit ~/.getlink/.name.db

      e cancelli quello che vuoi.
      ciao!

    1. non hai letto bene il mio post sul blog, ho scritto di installare youtube-dl scaricato da dove ho indicato nel post.
      lo installi copiandolo in /usr/bin (se hai già installa youtube-dl, rinominalo in youtube-dl.old e poi copia il “mio” youtube-dl al suo posto)
      scaricalo da qui:
      http://www.box.net/shared/8u2minhh3g
      se ti da problemi sostituisci lo shabeng (la prima riga dello script youtube-dl) con questa:
      #!/usr/bin/env python

  1. Grazie della disponibilita’! Avevamo un problema con un sito su wordpress e vedendo il tuo ottimo sito (gia’ nei Nostri bookmarks!) abbiamo pensato di contatarti. Ma abbiamo risolto velocemente. Ti ringraziamo davvero.
    Un saluto

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...