je commence une nouvelle version du script qui permet d'avoir directement les emission disponible sans allez sur le site d'arte
voila le code
#!/bin/sh
#Version BETA
#déclaration variable
i=""
EX=.wmv
EMP=Vidéos/arte
##déclaration fonction
#annuler
annuler ()
{
if [ $? = 1 ]; then
rm $FXML
exit
fi
}
#choix de l'emission
choix_emission()
{
TITREBASE=$(cat $FXML | grep "<title>" | awk -F'<title>' '{print $2}' | awk -F'</title>' '{print $1}' | zenity --list --title="Arte+7 recorder" \
--text="Veuillez sélectionnez l'emission :"\
--column="emission"\
);
annuler
PAGE=`cat $FXML | grep -A 5 "$TITREBASE" | grep "<targetURL>" | awk -F'<targetURL>' '{print $2}' | awk -F'</targetURL>' '{print $1}'`
info_emission
}
#info emission
info_emission()
{
DATED=`cat $FXML | grep -A 5 "$TITREBASE" | grep "<startDate>" | awk -F'<startDate>' '{print $2}' | awk -F'T' '{print $1}'`
RESUM=`wget -O - -q $PAGE | grep -A 2 '<p class="text">' | awk -F'<p class="info">' '{print $1}'| sed 's/<.*>/\ /g'`
zenity --question --title="Voulez vous télécharger l'émission $TITREBASE" --text="Titre : $TITREBASE
Date : $DATED
Résumer : $RESUM"
if [ $? = 1 ]; then
choix_emission
fi
}
#recuperation page arte
PARTE=`wget -O - -q http://plus7.arte.tv/ | grep xmlURL | awk -F'"' '{print $4}'`
PXML="http://plus7.arte.tv/"$PARTE
#recuperation fichier xml
wget $PXML
FXML=`echo $PARTE | awk -F"/" '{print $4}'`
#selection de l'emission
choix_emission
#Tanscription du titre
TITRE=`echo "$TITREBASE" | sed -e "s/[[:space:]]/_/g" | sed -e "s/\/$//" | sed -e "s/'/_/g" | sed -e "s/-/_/g" | sed -e "s/__/_/g"`
OUT=$TITRE
#vérification doublon
ls $HOME/$EMP/$OUT$EX >> /dev/null 2>&1
if (test $? -ne 0);
then OUT2=$OUT
else while ls $HOME/$EMP/$OUT$i$EX >> /dev/null 2>&1
do
i=$(($i+1))
if (test $? -eq 0) then OUT2=$OUT$i
fi
done
fi
# divers
TEMP=`echo "$TITRE"_temp.wmv`
# recupere dans le source le lien vers le fichier qui contient le vrai lien
FILE1=`wget -O - -q $PAGE | grep wmv | grep HQ | awk -F= '{print $2}' | awk -F\" '{print $2}'`
wget $FILE1 -O $TEMP
# extrait le lien mms
MMS=`cat $TEMP | grep mms | awk -F\" '{print $2}'`
#netoyage
rm $TEMP
rm $FXML
#telechargement graphique et prévisualisation
(mimms $MMS $HOME/$EMP/$OUT2$EX | gawk -vRS="\r" '/^[0-9]/{print "#"$0 ; fflush();}' | zenity --progress --pulsate --title="telechargement de $TITREBASE $i" --text="Enregistrement de $TITREBASE $i" --auto-close --auto-kill annuler)&
sleep 30s && zenity --question --title="Lecture" --text="Voulez vous prévisualisez $TITREBASE $i?" >>/dev/null 2>&1
if (test $? -eq 0);
then totem $HOME/$EMP/$OUT2$EX
fi
# notif finale
wait
echo message:enregistrement de $TITREBASE $i est terminé | zenity --notification --listen --window-icon="info" | zenity --notification --window-icon="info" --text="enregistrement de $TITREBASE $i est terminé"
#ouverture du fichier
zenity --question --title="Lecture" --text="Voulez vous lire $TITREBASE $i?" >>/dev/null 2>&1
if (test $? -eq 0);
then totem $HOME/$EMP/$OUT2$EX
else exit
fi
fi
pour l'instant seul les émissions non récurrentes fonctionne
le problème vient du fait que je n'arrive pas a avoir dans zenity le nom de l'émission et son URL sur la même ligne de sélection
si vous avez le temps de de regarder mon problème
sinon donnez moi votre avis