Barra laterale

programmazione:bash:script_per_scaricare_da_rai.tv

Scaricare video da rai.tv

Autore: Fabio Di Matteo
Ultima revisione: 05/04/2009

Scaricamento in versione testuale

#!/bin/sh
clear
 
 
#Scarica la pagina principale
wget $1 -O /tmp/index.html 
 
#Filtra la pagina principale
grep "http://mediapolis.rai.it/relinker/relinkerServlet.htm?cont=" /tmp/index.html > /tmp/pulito1.txt
 
sed -i "s/var videoURL = \"//g" /tmp/pulito1.txt
sed -i "s/\";//g" /tmp/pulito1.txt
sed -i "s/\t//g" /tmp/pulito1.txt
 
wget -i /tmp/pulito1.txt -O //tmp/playlist.txt
sed -i "s/<ASX VERSION=\"3.0\"><ENTRY><REF HREF=\"//g" /tmp/playlist.txt
sed -i "s/\" /></ENTRY></ASX>\"//g" /tmp/playlist.txt
 
#scarica finalmente il video
mencoder  -ovc copy -oac copy  `cat /tmp/playlist.txt` -o $PWD/video`date +%N`.wmv
 
#cancella file inutili
rm /tmp/pulito1.txt /tmp/index.html /tmp/playlist.txt >/dev/null

Scaricamento in versione grafica

Richiede zenity

#!/bin/sh
clear
 
url=$(zenity --entry --text="Incolla URL da www.rai.tv" --entry-text="[url]")
 
#Scarica la pagina principale
wget $url -O /tmp/index.html 
 
#Filtra la pagina principale
grep "http://mediapolis.rai.it/relinker/relinkerServlet.htm?cont=" /tmp/index.html > /tmp/pulito1.txt
 
sed -i "s/var videoURL = \"//g" /tmp/pulito1.txt
sed -i "s/\";//g" /tmp/pulito1.txt
sed -i "s/\t//g" /tmp/pulito1.txt
 
 
wget -i /tmp/pulito1.txt -O //tmp/playlist.txt
sed -i "s/<ASX VERSION=\"3.0\"><ENTRY><REF HREF=\"//g" /tmp/playlist.txt
sed -i "s/\" /></ENTRY></ASX>\"//g" /tmp/playlist.txt
 
xterm -e mencoder  -ovc copy -oac copy  `cat /tmp/playlist.txt` -o $PWD/video`date +%N`.wmv
 
 
#cancella file inutili
rm /tmp/pulito1.txt /tmp/index.html /tmp/playlist.txt >/dev/null
zenity --info --text="Scaricamento video terminato, speriamo bene!"

Vedere video con mplayer - versione testuale

#!/bin/sh
clear
 
 
 
#Scarica la pagina principale
wget $1 -O /tmp/index.html 
 
#Filtra la pagina principale
grep "http://mediapolis.rai.it/relinker/relinkerServlet.htm?cont=" /tmp/index.html > /tmp/pulito1.txt
 
sed -i "s/var videoURL = \"//g" /tmp/pulito1.txt
sed -i "s/\";//g" /tmp/pulito1.txt
sed -i "s/\t//g" /tmp/pulito1.txt
sed -i "s/http/mms/g" /tmp/pulito1.txt
 
wget -i /tmp/pulito1.txt -O //tmp/playlist.txt
sed -i "s/<ASX VERSION=\"3.0\"><ENTRY><REF HREF=\"//g" /tmp/playlist.txt
sed -i "s/\" /></ENTRY></ASX>\"//g" /tmp/playlist.txt
 
mplayer `cat /tmp/pulito1.txt` 
 
#cancella file inutili
rm /tmp/pulito1.txt /tmp/index.html /tmp/playlist.txt >/dev/null

Vedere video con mplayer - versione grafica

#!/bin/sh
clear
 
url=$(zenity --entry --text="Incolla URL da www.rai.tv" --entry-text="[url]")
 
#Scarica la pagina principale
wget $url -O /tmp/index.html 
 
#Filtra la pagina principale
grep "http://mediapolis.rai.it/relinker/relinkerServlet.htm?cont=" /tmp/index.html > /tmp/pulito1.txt
 
sed -i "s/var videoURL = \"//g" /tmp/pulito1.txt
sed -i "s/\";//g" /tmp/pulito1.txt
sed -i "s/\t//g" /tmp/pulito1.txt
#sed -i "s/http/mms/g" /tmp/pulito1.txt
 
wget -i /tmp/pulito1.txt -O //tmp/playlist.txt
sed -i "s/<ASX VERSION=\"3.0\"><ENTRY><REF HREF=\"//g" /tmp/playlist.txt
sed -i "s/\" /></ENTRY></ASX>\"//g" /tmp/playlist.txt
 
xterm -e mplayer `cat /tmp/pulito1.txt`
 
#cancella file inutili
rm /tmp/pulito1.txt /tmp/index.html /tmp/playlist.txt >/dev/null

Vecchia versione per il vecchio sito rai

#!/bin/sh
# Copyright (c) 2007 Fabio Di Matteo 
# Distributed under the terms of the GNU General Public License v2
# $Id$
#
# Usage: ./getraitv <url>
 
 
clear
$URL_RAI="http://www.rai.tv"
 
 
#Scarica la pagina principale
wget $1 -O $PWD/index.html 
 
#Filtra la pagina principale
cat $PWD/index.html |grep '<PARAM NAME="URL" VALUE="/mpASX/' > $PWD/pulito1.txt
 
#Toglie i simboli 
cat $PWD/pulito1.txt | tr -d '\t <=" >' > $PWD/pulito2.txt
 
#Toglie quello che resta da togliere
stringaZ=`cat $PWD/pulito2.txt`
echo ${stringaZ//PARAMNAMEURLVALUE/} >  $PWD/pulito3.txt
 
#Scarica il file xml ASX
wget -B http://www.rai.tv -i $PWD/pulito3.txt -O $PWD/asx.xml
 
#Individua la riga del link 
cat $PWD/asx.xml |grep 'mms' > $PWD/pulito1.txt
 
#Toglie i simboli dei tag 
cat $PWD/pulito1.txt | tr -d '\t <=" >' > $PWD/pulito2.txt
 
#Pulisce ulteriormente il link dai tag
stringaZ=`cat $PWD/pulito2.txt`
echo ${stringaZ//REFHREF/} >  $PWD/pulito3.txt
 
#Toglie lo slash finale dal link :)
stringaZ=`cat $PWD/pulito3.txt`
echo ${stringaZ/%\//} >  $PWD/pulito4.txt
 
 
#Scarica il file 
mencoder -oac copy -ovc copy `cat $PWD/pulito4.txt` -o $PWD/video`date +%N`.avi
 
#Ripulisce i file temporanei
rm $PWD/pulito1.txt $PWD/pulito2.txt $PWD/pulito3.txt $PWD/pulito4.txt $PWD/index.html

Installazione (non necessaria)

  • creiamo il file getraitv con lo script sopra esposto
  • copiamo getraitv in /usr/bin
  • diamo i permessi di esecuzione allo script con chmod +xxx /usr/bin/getraitv

Esempio di utilizzo

Recuperiamo l'indirizzo della pagina dove c'è il video che vogliamo scaricare e scriviamo in un terminale:

Se abbiamo fatto l'installazione allora:

getraitv <indirizzo>

altrimenti:

./getraitv <indirizzo>

programmazione/bash/script_per_scaricare_da_rai.tv.txt · Ultima modifica: 18/04/2018 - 15:48 (modifica esterna)