#1 Le 27/03/2006, à 13:20
- maxfox
[Script] CanalM Easy : Télécharger les émissions de C+ facilement
Bonjour tout le monde.
Suite à ce sujet :
http://forum.ubuntu-fr.org/viewtopic.php?id=30327
et même si je ne suis pas trés télé-télé, je me suis dit que c'était un bon point de départ pour écrire mon tout premier script bash/zenity.
Je n'ai pas tout testé mais il semble bien marcher, si ce n'est une utilisation excessive du processeur par zenity lors des téléchargements, problème que je n'arrive pas à résoudre, si ce n'est en commentant la ligne correspondant à zenity dans le processus de téléchargement (à bon entendeur....).
!!! Des versions améliorées pouvant être ajoutées par d'autres personnes, je vous encourage à parcourir tout ce sujet avant de récupérer ce script.
(Au passage, merci à ceux qui contribuent ou vont contribuer).
#!/bin/sh
#
#
# CanalM Easy Version 0.1 Fr (27 mars 2006)
#
# Petit script pour télécharger des émissions de Canal+ :
#
# - Les Guignols
# - Le Zapping
# - 7 Jours au Groland
# - La Minute Blonde
# - La Boite à Questions
# - L'Anniversaire
# - Le Vrai Journal
# - Nous Ne Sommes Pas Des Anges
# - Vendredi Pétantes
# - Samedi Pétantes
# - Le Grand Journal
# - Germain fait sa télé
#
#
# Par Maxfox
# maxfox (tout attaché) 777 chez hot mail.fr
#
#
# Dépendances : mimms & zenity
#
# Encoding UTF-8
#
#
# Licence : GNU GPL
#
# Copyright (C) (Owner)
#
#
################# On Commence ici ! ####################
# Vérifier que mimms est bien présent
mimms_path=`which mimms`
if [ ! "$mimms_path" ] || [ ! -x "$mimms_path" ] ; then
zenity --error --title="erreur" --text="Impossible de trouver l'executable \"mimms\". Veuillez installer le paquet mimms."
fi
# Choisir l'émission à télécharger
title="Choisissez l'émission à télécharger"
text="Choisissez dans la liste, en tenant compte des jours de diffusion."
emission=`zenity --title "$title" --height=300 --width=500 --text "$text" --list --column="Emissions" --column "Diffusion" "Les Guignols" "du Lundi au Vendredi" "Le Zapping" "du Lundi au Vendredi" "7 Jours au Groland" "le Samedi" "La Minute Blonde" "du Lundi au Jeudi" "La Boite à Questions" "du Lundi au Jeudi" "L'Anniversaire" "du Lundi au Jeudi" "Le Vrai Journal" "le Dimanche" "Nous Ne Sommes Pas Des Anges" "du Lundi au Vendredi" "Vendredi Pétantes" "le Vendredi" "Samedi Pétantes" "le Samedi" "Le Grand Journal" "du Lundi au Jeudi" "Germain fait sa télé" "le Samedi" `
# Si l'utilisateur clic sur "annuler" : annulation du processus !!!
if [ "$?" != 0 ] ; then
exit
fi
# L'utilisateur doit faire un choix pour continuer
emission=`echo $emission | sed 's/ max//g'`
if [ ! "$emission" ]; then
zenity --error --title="erreur" --text="Vous devez faire un choix avant de valider"
exit
fi
# Choisir la date de l'émission à télécharger
datec=`zenity --title="Choisisez la date" --text="En cas d'erreur, vérifiez que l'émission a bien eu lieu." --calendar --date-format='%y%m%d' `
# Si l'utilisateur clic sur "annuler" : annulation du processus !!!
if [ "$?" != 0 ] ; then
exit
fi
################# Télécharger l'émission choisie ###################
# Si "Les Guignols".
if [ "$emission" == "Les Guignols" ]; then
mimms -o /home/$USER/Les_Guignols_"$datec".wmv mms://vipmms.canalplus.fr/canalplus/guignols_"$datec"_a.wmv | zenity --progress --pulsate --title="Téléchargement" --text="Le téléchargement des Guignols est en cours dans votre home." --auto-close
fi
# Si "Le Zapping".
if [ "$emission" == "Le Zapping" ]; then
mimms -o /home/$USER/Le_Zapping_"$datec".wmv mms://vipmms.canalplus.fr/canalplus/zapping_"$datec"_a.wmv | zenity --progress --pulsate --title="Téléchargement" --text="Le téléchargement du Zapping est en cours dans votre home." --auto-close
fi
# Si "7 Jours au Groland".
if [ "$emission" == "7 Jours au Groland" ]; then
mimms -o /home/$USER/Groland_Partie_1_"$datec".wmv mms://vipmms.canalplus.fr/canalplus/groland_"$datec"_a.wmv | mimms -o /home/$USER/Groland_Partie_2_"$datec".wmv mms://vipmms.canalplus.fr/canalplus/groland_"$datec"_b.wmv | zenity --progress --pulsate --title="Téléchargement" --text="Le téléchargement de 7 Jours au Groland (parties 1 et 2) est en cours dans votre home." --auto-close
fi
# Si "La Minute Blonde".
if [ "$emission" == "La Minute Blonde" ]; then
mimms -o /home/$USER/La_Minute_Blonde_"$datec".wmv mms://vipmms.canalplus.fr/canalplus/minute_"$datec"_a.wmv | zenity --progress --pulsate --title="Téléchargement" --text="Le téléchargement de la Minute Blonde est en cours dans votre home." --auto-close
fi
# Si "La Boite à Question".
if [ "$emission" == "La Boite à Questions" ]; then
mimms -o /home/$USER/questions_"$datec".wmv mms://vipmms.canalplus.fr/canalplus/questions_"$datec"_a.wmv | zenity --progress --pulsate --title="Téléchargement" --text="Le téléchargement de la Boite à Questions est en cours dans votre home." --auto-close
fi
# Si "L'Anniversaire".
if [ "$emission" == "L'Anniversaire" ]; then
mimms -o /home/$USER/Anniversaire_"$datec".wmv mms://vipmms.canalplus.fr/canalplus/anniversaire_"$datec"_a.wmv | zenity --progress --pulsate --title="Téléchargement" --text="Le téléchargement de l'Anniversaire est en cours dans votre home." --auto-close
fi
# Si "Le Vrai Journal".
if [ "$emission" == "Le Vrai Journal" ]; then
mimms -o /home/$USER/Le_Vrai_Journal_Partie_1_"$datec".wmv mms://vipmms.canalplus.fr/canalplus/vraijournal_"$datec"_a.wmv | mimms -o /home/$USER/Le_Vrai_Journal_Partie_2_"$datec".wmv mms://vipmms.canalplus.fr/canalplus/vraijournal_"$datec"_b.wmv | zenity --progress --pulsate --title="Téléchargement" --text="Le téléchargement du Vrai Journal (parties 1 et 2) est en cours dans votre home." --auto-close
fi
# Si "Nous ne Sommes Pas des Anges".
if [ "$emission" == "Nous Ne Sommes Pas Des Anges" ]; then
mimms -o /home/$USER/Nous_Ne_Sommes_Pas_Des_Anges_Partie_1_"$datec".wmv mms://vipmms.canalplus.fr/canalplus/nousnesommes_"$datec"_a.wmv | mimms -o /home/$USER/Nous_Ne_Sommes_Pas_Des_Anges_Partie_2_"$datec".wmv mms://vipmms.canalplus.fr/canalplus/nousnesommes_"$datec"_b.wmv | zenity --progress --pulsate --title="Téléchargement" --text="Le téléchargement de Nous Ne Sommes Pas Des Anges (parties 1 et 2) est en cours dans votre home." --auto-close
fi
# Si "Vendredi Pétante".
if [ "$emission" == "Vendredi Pétantes" ]; then
mimms -o /home/$USER/Vendredi_Pétantes_Partie_1_"$datec".wmv mms://vipmms.canalplus.fr/canalplus/vendredi-petantes_"$datec"_a.wmv | mimms -o /home/$USER/Vendredi_Pétantes_Partie_2_"$datec".wmv mms://vipmms.canalplus.fr/canalplus/vendredi-petantes_"$datec"_b.wmv | mimms -o /home/$USER/Vendredi_Pétantes_Partie_3_"$datec".wmv mms://vipmms.canalplus.fr/canalplus/vendredi-petantes_"$datec"_c.wmv | mimms -o /home/$USER/Vendredi_Pétantes_Partie_4_"$datec".wmv mms://vipmms.canalplus.fr/canalplus/vendredi-petantes_"$datec"_d.wmv | zenity --progress --pulsate --title="Téléchargement" --text="Le téléchargement de Vendredi Pétantes (parties 1, 2, 3 et 4) est en cours dans votre home." --auto-close
fi
# Si "Samedi Pétante".
if [ "$emission" == "Samedi Pétantes" ]; then
mimms -o /home/$USER/Samedi_Pétantes_Partie_1_"$datec".wmv mms://vipmms.canalplus.fr/canalplus/samedi-petantes_"$datec"_a.wmv | mimms -o /home/$USER/Samedi_Pétantes_Partie_2_"$datec".wmv mms://vipmms.canalplus.fr/canalplus/samedi-petantes_"$datec"_b.wmv | mimms -o /home/$USER/Samedi_Pétantes_Partie_3_"$datec".wmv mms://vipmms.canalplus.fr/canalplus/samedi-petantes_"$datec"_c.wmv | zenity --progress --pulsate --title="Téléchargement" --text="Le téléchargement de Samedi Pétantes (parties 1, 2 et 3) est en cours dans votre home." --auto-close
fi
# Si "Le Grand Journal".
if [ "$emission" == "Le Grand Journal" ]; then
mimms -o /home/$USER/Grand_Journal_Partie_1_"$datec".wmv mms://vipmms.canalplus.fr/canalplus/grandjournal_"$datec"_a.wmv | mimms -o /home/$USER/Grand_Journal_Partie_2_"$datec".wmv mms://vipmms.canalplus.fr/canalplus/grandjournal_"$datec"_b.wmv | mimms -o /home/$USER/Grand_Journal_Partie_3_"$datec".wmv mms://vipmms.canalplus.fr/canalplus/grandjournal_"$datec"_c.wmv | mimms -o /home/$USER/Grand_Journal_Partie_4_"$datec".wmv mms://vipmms.canalplus.fr/canalplus/grandjournal_"$datec"_d.wmv | zenity --progress --pulsate --title="Téléchargement" --text="Le téléchargement du Grand Journal (parties 1, 2, 3 et 4) est en cours dans votre home." --auto-close
fi
# Si "Germain fait sa télé"
if [ "$emission" == "Germain fait sa télé" ]; then
mimms -o /home/$USER/Germain_fait_sa_télé_"$datec".wmv mms://vipmms.canalplus.fr/canalplus/germain_"$datec"_a.wmv | zenity --progress --pulsate --title="Téléchargement" --text="Le téléchargement de Germain fait sa télé est en cours dans votre home." --auto-close
fi
# Si l'utilisateur clic sur "annuler" : annulation du processus !!!
if [ "$?" != 0 ] ; then
exit
fi
Pour utiliser ce script il suffit de le copier/coller dans Gedit, de l'enregistrer et de le rendre exécutable. On peut par la suite le mettre dans le dossier " /home/votre nom/.gnome2/nautilus-scripts" pour en faire un script Nautilus et/ou créer un lanceur dans le menu Gnome....
Note : en cas d'erreur, vous devez vous assurer que l'émission que vous voulez télécharger a bien été diffusée ou que vous ne vous êtes pas trompé de jour (le script ne gère pas les dates de diffusion mais vous rappel simplement pour chaque émission sa grille de programation).
Toute suggestion est la bienvenue quand à l'amélioration de ce script (je rappelle que c'est mon tout premier, il y a surement des abérations dans l'écriture).
Edit : ajout de "Germain fait sa télé" et petites modifications de texte.
Maxfox
Dernière modification par maxfox (Le 01/04/2006, à 14:42)
Hors ligne
#2 Le 27/03/2006, à 13:35
- doohan
Re : [Script] CanalM Easy : Télécharger les émissions de C+ facilement
genial ça marche sous kde merci a toi
Hors ligne
#3 Le 27/03/2006, à 13:38
- Ago
Re : [Script] CanalM Easy : Télécharger les émissions de C+ facilement
Alors, pour faire simple:
Copier le script dans gedit, et décommenter la première ligne (remplacer #!/bin/sh par !/bin/sh) .
Enregistrer, le rendre executable en tapant dans la console:
sudo chmod a+x /chemin/du/script/script
Installer les dépendances:
sudo apt-get install mimms zenity
Double-cliquer sur le script > lancer, et wala
Bon travail, par contre un message d'erreur quand on essaye de prendre un emission qui n'existe pas, ça serait cool
Et puis c'est loooong!
Mais c'est pas de ta faute
Merci
Dernière modification par Ago (Le 27/03/2006, à 13:39)
Blog libre <= pour bien se lancer sous Ubuntu Linux !
Linux =/= Windows Souvenez-vous en!
Hors ligne
#4 Le 27/03/2006, à 14:25
- GaRgAm
Re : [Script] CanalM Easy : Télécharger les émissions de C+ facilement
je kiff
merci bcp
Hors ligne
#5 Le 27/03/2006, à 15:15
- maxfox
Re : [Script] CanalM Easy : Télécharger les émissions de C+ facilement
Merci à vous trois pour le retour, ça fait toujours plaisir
Je viens d'ajouter "Germain fait sa télé" dans les choix d'émission.
@Ago : en effet un message d'erreur serait le bien venu en cas d'émission inexistante, le problème c'est que je suis grand débutant et ne sais pas comment faire, encore...
Hors ligne
#6 Le 27/03/2006, à 16:23
- GaRgAm
Re : [Script] CanalM Easy : Télécharger les émissions de C+ facilement
Hi io
Pour le message d'erreur tu utilise la variable $?
je prend une ligne exemple de ton programme et je test si elle s'est mal déroulé:
mimms -o /home/$USER/Les_Guignols_"$datec".wmv mms://vipmms.canalplus.fr/canalplus/guignols_"$datec"_a.wmv | zenity --progress --pulsate --title="Téléchargement" --text="Le téléchargement des Guignols est en cours dans votre home." --auto-close
if [ $? != 0 ]
#Probleme lors de lexecution donc un ptit message zenity pour le dire et un exit a la fin pour sortir du
#programme ;)
exit
fi
Hors ligne
#7 Le 27/03/2006, à 17:04
- Shura
Re : [Script] CanalM Easy : Télécharger les émissions de C+ facilement
Très bon script, bravo !
Par contre chez moi j'ai un (petit) bug, le fichier se télécharge, mais la barre de progression n'avançe pas.
Des idées ?
(Je suis sous KDE 3.5.2)
Hors ligne
#8 Le 27/03/2006, à 17:43
- Ago
Re : [Script] CanalM Easy : Télécharger les émissions de C+ facilement
Bah dans Gnome on a juste une barre qui fait des aller-retour, on ne connait pas non plus l'état d'avancement...
Mais je crois pas que l'on puisse y aire grand chose en fait
Blog libre <= pour bien se lancer sous Ubuntu Linux !
Linux =/= Windows Souvenez-vous en!
Hors ligne
#9 Le 27/03/2006, à 18:23
- Shura
Re : [Script] CanalM Easy : Télécharger les émissions de C+ facilement
Ah ok ! Donc c'est encore moins grave que prévu.
J'essaierai de prendre un screenshot à l'occasion pour vous montrer.
Hors ligne
#10 Le 27/03/2006, à 23:10
- maxfox
Re : [Script] CanalM Easy : Télécharger les émissions de C+ facilement
@ Shura & Ago : la barre en pulsation est un choix délibéré de ma part car la barre de progression "classique" ne suis pas l'avancée du téléchargement, elle reste à 0 et ne se remplie qu'une fois le téléchargement terminé pour disparaitre dans la foulée (en tout cas pour les émissions en 1 partie).
J'ai donc pensé qu'une barre animée serait plus "rassurante", même si elle ne suit pas l'avancé du téléchargement
Je referais peut-être des tests plus tard.
@ GaRgAm : j'avais déjà essayé cette solution mais elle ne marche (à prioris) pas, car le retour n'est pas nul.
J'ai essayé en metant la valeur 1 au lieu de 0, ça marche bien quand l'émission n'est pas dispo mais quand elle l'est, une fois le téléchargement terminé, le message d'erreur apparait (ce qui est est bien normal avec cette valeur).
Peut-être en combinant la valeur 1 et grep pour rechercher le message d'erreur de segmentation renvoyé par mimms en cas d'émission indisponible...
Hors ligne
#11 Le 27/03/2006, à 23:24
- Shura
Re : [Script] CanalM Easy : Télécharger les émissions de C+ facilement
Le "problème" maxfox, c'est que chez moi (KDE 3.5.2), il n'y a pas de barre animé, il y a juste :
Bon encore une fois c'est pas très grave hein
Hors ligne
#12 Le 28/03/2006, à 12:23
- maxfox
Re : [Script] CanalM Easy : Télécharger les émissions de C+ facilement
Pas grave, mais étrange tout de même...
Il faudrait voir ce que donne la commande : locate lib | zenity --progress --pulsate
Si tu n'as pas la barre animée pendant la recherche, alors ce doit être un bug de zenity avec l'environnement KDE, ou autre. Et si ca marche, ben je sais pas quoi te dire...
Hors ligne
#13 Le 01/04/2006, à 09:31
- pabix
Re : [Script] CanalM Easy : Télécharger les émissions de C+ facilement
J'ai adapté ce script pour qu'il télécharge également les journaux de France 2
Je l'ai également ultra simplifié avec une fonction générique qui fait tout ce qu'il faut et le choix du dossier destination
#!/bin/sh
#
# CanalM Easy Version 0.1 Fr (27 mars 2006)
# Petit script pour télécharger des émissions de Canal+ et France 2 :
# - Les Guignols
# - Le Zapping
# - 7 Jours au Groland
# - La Minute Blonde
# - La Boite à Questions
# - L'Anniversaire
# - Le Vrai Journal
# - Nous Ne Sommes Pas Des Anges
# - Vendredi Pétantes
# - Samedi Pétantes
# - Le Grand Journal
# - Germain fait sa télé
# - Journaux télévisés de 8, 13 et 20 heures
#
# Par Maxfox (maxfox (tout attaché) 777 chez hot mail.fr)
# et Pabix (mortgat chez gmail point com)
#
# Dépendances : mimms & zenity
# Encoding : UTF-8
# Licence : GNU GPL
# Copyright (C) (Owner)
################# On Commence ici ! ####################
#################
#À personnaliser#
#################
dossier=$HOME
racineF2='mms://sdmc.contents.edgestreams.net/horsgv/regions/siege/infos/f2'
racineCP='mms://vipmms.canalplus.fr/canalplus'
function get_programme(){
mimms -o "${dossier}/${1} ${datec}.wmv" "${2}${datec}${3}" | zenity --progress --pulsate --title="Téléchargement" --text="Téléchargement en cours dans votre dossier : ${4}" --auto-close
}
# Vérifier que mimms est bien présent
mimms_path=`which mimms`
if [ ! "$mimms_path" ] || [ ! -x "$mimms_path" ] ; then
zenity --error --title="erreur" --text="Impossible de trouver l'executable \"mimms\". Veuillez installer le paquet mimms."
fi
# Choisir l'émission à télécharger
title="Choisissez l'émission à télécharger"
text="Choisissez dans la liste, en tenant compte des jours de diffusion."
emission=`zenity --title "$title" --height=300 --width=500 --text "$text" --list --column="Emissions" --column "Diffusion" "Les Guignols" "du Lundi au Vendredi" "Le Zapping" "du Lundi au Vendredi" "7 Jours au Groland" "le Samedi" "La Minute Blonde" "du Lundi au Jeudi" "La Boite à Questions" "du Lundi au Jeudi" "L'Anniversaire" "du Lundi au Jeudi" "Le Vrai Journal" "le Dimanche" "Nous Ne Sommes Pas Des Anges" "du Lundi au Vendredi" "Vendredi Pétantes" "le Vendredi" "Samedi Pétantes" "le Samedi" "Le Grand Journal" "du Lundi au Jeudi" "Germain fait sa télé" "le Samedi" "20 heures" "Tous les jours" "13 heures" "Tous les jours" "8 heures" "du lundi au vendredi"`
# Si l'utilisateur clique sur "annuler" : annulation du processus !!!
if [ "$?" != 0 ] ; then
exit
fi
# L'utilisateur doit faire un choix pour continuer
emission=`echo $emission | sed 's/ max//g'`
if [ ! "$emission" ]; then
zenity --error --title="erreur" --text="Vous devez faire un choix avant de valider"
exit
fi
# Choisir la date de l'émission à télécharger
datec=`zenity --title="Choisisez la date" --text="En cas d'erreur, vérifiez que l'émission a bien eu lieu." --calendar --date-format='%y%m%d' `
# Si l'utilisateur clic sur "annuler" : annulation du processus !!!
if [ "$?" != 0 ] ; then
exit
fi
################# Télécharger l'émission choisie ###################
# Si "20H".
if [ "$emission" == "20 heures" ]; then
get_programme '20 heures' "${racineF2}/20h/HD_20h_20" '.wmv?WMCache=1&WMBitRate=280000' 'Journal de vingt heures'
fi
# Si "13H".
if [ "$emission" == "13 heures" ]; then
get_programme '13 heures' "${racineF2}/13h/HD_13h_20" '.wmv?WMCache=1&WMBitRate=280000' 'Journal de treize heures'
fi
# Si "8H".
if [ "$emission" == "8 heures" ]; then
get_programme '8 heures' "${racineF2}/8h/HD_8h_20" '.wmv?WMCache=1&WMBitRate=280000' 'Journal de huit heures'
fi
# Si "Les Guignols".
if [ "$emission" == "Les Guignols" ]; then
get_programme 'Les guignols' "${racineCP}/guignols_" '_a.wmv' "Les guignols de l'information"
fi
# Si "Le Zapping".
if [ "$emission" == "Le Zapping" ]; then
get_programme 'Le zapping' "${racineCP}/zapping_" '_a.wmv' 'Le zapping'
fi
# Si "7 Jours au Groland".
if [ "$emission" == "7 Jours au Groland" ]; then
get_programme '7 jours au Groland (1)' "${racineCP}/groland_" '_a.wmv' '7 jours au Groland (partie 1)' &
get_programme '7 jours au Groland (2)' "${racineCP}/groland_" '_b.wmv' '7 jours au Groland (partie 2)'
fi
# Si "La Minute Blonde".
if [ "$emission" == "La Minute Blonde" ]; then
get_programme 'La minute blonde' "${racineCP}/minute_" '_a.wmv' 'La minute blonde'
fi
# Si "La Boite à Questions".
if [ "$emission" == "La Boite à Questions" ]; then
get_programme 'La Boîte à Questions' "${racineCP}/questions_" '_a.wmv' 'La Boîte à Questions'
fi
# Si "L'Anniversaire".
if [ "$emission" == "L'Anniversaire" ]; then
get_programme 'Anniversaire' "${racineCP}/anniversaire_" '_a.wmv' "L'anniversaire"
fi
# Si "Le Vrai Journal".
if [ "$emission" == "Le Vrai Journal" ]; then
get_programme 'Le Vrai Journal (1)' "${racineCP}/vraijournal_" '_a.wmv' 'Le vrai journal (partie 1)' &
get_programme 'Le Vrai Journal (2)' "${racineCP}/vraijournal_" '_b.wmv' 'Le vrai journal (partie 2)'
fi
# Si "Nous ne Sommes Pas des Anges".
if [ "$emission" == "Nous Ne Sommes Pas Des Anges" ]; then
get_programme 'Nous ne sommes pas des anges (1)' "${racineCP}/nousnesommes_" '_a.wmv' 'Nous ne sommes pas des anges (partie 1)' &
get_programme 'Nous ne sommes pas des anges (2)' "${racineCP}/nousnesommes_" '_b.wmv' 'Nous ne sommes pas des anges (partie 2)'
fi
# Si "Vendredi Pétante".
if [ "$emission" == "Vendredi Pétantes" ]; then
get_programme 'Vendredi pétantes (1)' "${racineCP}/vendredi-petantes_" '_a.wmv' 'Vendredi pétantes (partie 1)' &
get_programme 'Vendredi pétantes (2)' "${racineCP}/vendredi-petantes_" '_b.wmv' 'Vendredi pétantes (partie 2)' &
get_programme 'Vendredi pétantes (3)' "${racineCP}/vendredi-petantes_" '_c.wmv' 'Vendredi pétantes (partie 3)' &
get_programme 'Vendredi pétantes (4)' "${racineCP}/vendredi-petantes_" '_d.wmv' 'Vendredi pétantes (partie 4)'
fi
# Si "Samedi Pétante".
if [ "$emission" == "Samedi Pétantes" ]; then
get_programme 'Samedi Pétantes (1)' "${racineCP}/samedi-petantes_" '_a.wmv' 'Samedi Pétantes (partie 1)' &
get_programme 'Samedi Pétantes (2)' "${racineCP}/samedi-petantes_" '_b.wmv' 'Samedi Pétantes (partie 2)' &
get_programme 'Samedi Pétantes (3)' "${racineCP}/samedi-petantes_" '_c.wmv' 'Samedi Pétantes (partie 3)'
fi
# Si "Le Grand Journal".
if [ "$emission" == "Le Grand Journal" ]; then
get_programme 'Le Grand Journal (1)' "${racineCP}/grandjournal_" '_a.wmv' 'Le Grand Journal (partie 1)' &
get_programme 'Le Grand Journal (2)' "${racineCP}/grandjournal_" '_b.wmv' 'Le Grand Journal (partie 2)' &
get_programme 'Le Grand Journal (3)' "${racineCP}/grandjournal_" '_c.wmv' 'Le Grand Journal (partie 3)' &
get_programme 'Le Grand Journal (4)' "${racineCP}/grandjournal_" '_d.wmv' 'Le Grand Journal (partie 4)'
fi
# Si "Germain fait sa télé"
if [ "$emission" == "Germain fait sa télé" ]; then
get_programme 'Germain fait sa télé)' "${racineCP}/germain_" '_a.wmv' 'Germain fait sa télé'
fi
# Si l'utilisateur clic sur "annuler" : annulation du processus !!!
if [ "$?" != 0 ] ; then
exit
fi
Dernière modification par pabix (Le 01/04/2006, à 13:30)
Utilisateur du clavier BÉPO.
mortgat (()) gmail () com
GPG 0x377D716D
Hors ligne
#14 Le 01/04/2006, à 10:55
- traaf
Re : [Script] CanalM Easy : Télécharger les émissions de C+ facilement
génial ce truc
Vault106, musique libre, enjoy it /!\
Hors ligne
#15 Le 01/04/2006, à 12:12
- maxfox
Re : [Script] CanalM Easy : Télécharger les émissions de C+ facilement
Bonjour pabix.
Je suis content de ton intéret pour mon script. J'avais pensé à rajouter d'autres chaines mais pensais d'abord améliorer le script en lui même :
- Rajout d'un message d'erreur quand une émission est indisponible (là je butte complètement).
- Possibilitée de télécharger plusieurs émissions en même temps, ce qui avec la faible vitesse de téléchargement du protocole mms ne serait pas un luxe. (Ici j'ai avancé, sauf pour le téléchargement qui ce fait l'un aprés l'autre, il va falloir tout repenser... je pense).
En tout cas (comme tu l'as déjà compris) toute amélioration, ajout au code est bienvenue, du moment que les commentaires soient bien clairs (utile pour mon apprentissage ).
Dernière modification par maxfox (Le 01/04/2006, à 12:22)
Hors ligne
#16 Le 03/04/2006, à 12:59
- Sh4d
Re : [Script] CanalM Easy : Télécharger les émissions de C+ facilement
Salut, déja merci pour ce script vraiment sympas
Personnellement, je préfére regarder les émissions en streaming plutôt que les télécharger. J'ai donc modifié le script pour mes besoins personnelles et je le met ici au cas où si quelqu'un en aurait besoin (on sait jamais ).
#!/bin/sh
#
#
# CanalM Easy Version 0.1 Fr (27 mars 2006)
#
# Petit script pour télécharger des émissions de Canal+ :
#
# - Les Guignols
# - Le Zapping
# - 7 Jours au Groland
# - La Minute Blonde
# - La Boite à Questions
# - L'Anniversaire
# - Le Vrai Journal
# - Nous Ne Sommes Pas Des Anges
# - Vendredi Pétantes
# - Samedi Pétantes
# - Le Grand Journal
# - Germain fait sa télé
#
#
# Par Maxfox (maxfox (tout attaché) 777 chez hot mail.fr)
# et Sh4d (sh4dounet chez gmail)
#
#
# Dépendances : mimms & zenity
#
# Encoding UTF-8
#
#
# Licence : GNU GPL
#
# Copyright (C) (Owner)
#
#
################# On Commence ici ! ####################
# Vérifier que mimms est bien présent
mimms_path=`which mimms`
if [ ! "$mimms_path" ] || [ ! -x "$mimms_path" ] ; then
zenity --error --title="erreur" --text="Impossible de trouver l'executable \"mimms\". Veuillez installer le paquet mimms."
fi
#Choix du lecteur
title="Choix du lecteur"
text="Choisissez le lecteur a utilisé :"
lecteur=`zenity --title "$title" --height=200 --width=200 --text "$text" --list --column="Lecteur" --column "Chemin d'accés" "totem" "/usr/bin/totem" "vlc" "/usr/bin/vlc" "mplayer" "/usr/bin/mplayer"`
# Si l'utilisateur clic sur "annuler" : annulation du processus !!!
if [ "$?" != 0 ] ; then
exit
fi
# L'utilisateur doit faire un choix pour continuer
lecteur=`echo $lecteur | sed 's/ max//g'`
if [ ! "$lecteur" ]; then
zenity --error --title="erreur" --text="Vous devez faire un choix avant de valider"
exit
fi
# Choisir l'émission à télécharger
title="Choisissez l'émission à télécharger"
text="Choisissez dans la liste, en tenant compte des jours de diffusion."
emission=`zenity --title "$title" --height=300 --width=500 --text "$text" --list --column="Emissions" --column "Diffusion" "Les Guignols" "du Lundi au Vendredi" "Le Zapping" "du Lundi au Vendredi" "7 Jours au Groland" "le Samedi" "La Minute Blonde" "du Lundi au Jeudi" "La Boite à Questions" "du Lundi au Jeudi" "L'Anniversaire" "du Lundi au Jeudi" "Le Vrai Journal" "le Dimanche" "Nous Ne Sommes Pas Des Anges" "du Lundi au Vendredi" "Vendredi Pétantes" "le Vendredi" "Samedi Pétantes" "le Samedi" "Le Grand Journal" "du Lundi au Jeudi" "Germain fait sa télé" "le Samedi" "En Aparté" "Le Samedi"`
# Si l'utilisateur clic sur "annuler" : annulation du processus !!!
if [ "$?" != 0 ] ; then
exit
fi
# L'utilisateur doit faire un choix pour continuer
emission=`echo $emission | sed 's/ max//g'`
if [ ! "$emission" ]; then
zenity --error --title="erreur" --text="Vous devez faire un choix avant de valider"
exit
fi
# Choisir la date de l'émission à télécharger
datec=`zenity --title="Choisisez la date" --text="En cas d'erreur, vérifiez que l'émission a bien eu lieu." --calendar --date-format='%y%m%d' `
# Si l'utilisateur clic sur "annuler" : annulation du processus !!!
if [ "$?" != 0 ] ; then
exit
fi
################# Télécharger l'émission choisie ###################
# Si "Les Guignols".
if [ "$emission" == "Les Guignols" ]; then
$lecteur mms://vipmms.canalplus.fr/canalplus/guignols_"$datec"_a.wmv
fi
# Si "Le Zapping".
if [ "$emission" == "Le Zapping" ]; then
$lecteur mms://vipmms.canalplus.fr/canalplus/zapping_"$datec"_a.wmv
fi
# Si "7 Jours au Groland".
if [ "$emission" == "7 Jours au Groland" ]; then
$lecteur mms://vipmms.canalplus.fr/canalplus/groland_"$datec"_a.wmv mms://vipmms.canalplus.fr/canalplus/groland_"$datec"_b.wmv
fi
# Si "La Minute Blonde".
if [ "$emission" == "La Minute Blonde" ]; then
$lecteur mms://vipmms.canalplus.fr/canalplus/minute_"$datec"_a.wmv
fi
# Si "La Boite à Question".
if [ "$emission" == "La Boite à Questions" ]; then
$lecteur mms://vipmms.canalplus.fr/canalplus/questions_"$datec"_a.wmv
fi
# Si "L'Anniversaire".
if [ "$emission" == "L'Anniversaire" ]; then
$lecteur mms://vipmms.canalplus.fr/canalplus/anniversaire_"$datec"_a.wmv
fi
# Si "Le Vrai Journal".
if [ "$emission" == "Le Vrai Journal" ]; then
$lecteur mms://vipmms.canalplus.fr/canalplus/vraijournal_"$datec"_a.wmv mms://vipmms.canalplus.fr/canalplus/vraijournal_"$datec"_b.wmv
fi
# Si "Nous ne Sommes Pas des Anges".
if [ "$emission" == "Nous Ne Sommes Pas Des Anges" ]; then
$lecteur mms://vipmms.canalplus.fr/canalplus/nousnesommes_"$datec"_a.wmv mms://vipmms.canalplus.fr/canalplus/nousnesommes_"$datec"_b.wmv
fi
# Si "Vendredi Pétante".
if [ "$emission" == "Vendredi Pétantes" ]; then
$lecteur mms://vipmms.canalplus.fr/canalplus/vendredi-petantes_"$datec"_a.wmv mms://vipmms.canalplus.fr/canalplus/vendredi-petantes_"$datec"_b.wmv mms://vipmms.canalplus.fr/canalplus/vendredi-petantes_"$datec"_c.wmv mms://vipmms.canalplus.fr/canalplus/vendredi-petantes_"$datec"_d.wmv
fi
# Si "Samedi Pétante".
if [ "$emission" == "Samedi Pétantes" ]; then
$lecteur mms://vipmms.canalplus.fr/canalplus/samedi-petantes_"$datec"_a.wmv mms://vipmms.canalplus.fr/canalplus/samedi-petantes_"$datec"_b.wmv mms://vipmms.canalplus.fr/canalplus/samedi-petantes_"$datec"_c.wmv
fi
# Si "Le Grand Journal".
if [ "$emission" == "Le Grand Journal" ]; then
$lecteur mms://vipmms.canalplus.fr/canalplus/grandjournal_"$datec"_a.wmv mms://vipmms.canalplus.fr/canalplus/grandjournal_"$datec"_b.wmv mms://vipmms.canalplus.fr/canalplus/grandjournal_"$datec"_c.wmv mms://vipmms.canalplus.fr/canalplus/grandjournal_"$datec"_d.wmv
fi
# Si "Germain fait sa télé"
if [ "$emission" == "Germain fait sa télé" ]; then
$lecteur mms://vipmms.canalplus.fr/canalplus/germain_"$datec"_a.wmv
fi
# Si "En Aparté"
if [ "$emission" == "En Aparté" ]; then
$lecteur mms://vipmms.canalplus.fr/canalplus/enaparte_"$datec"_a.wmv mms://vipmms.canalplus.fr/canalplus/enaparte_"$datec"_b.wmv
fi
J'ai jamais codé en bash, donc j'ai modifier le script en esayant de comprendre en mm temps ^^ ... en tout cas ca marche .
Bon, par contre il n'y a que le choix entre 3 lecteurs (totem, vlc et mplayer) car je connais pas les autres.
PS : J'ai aussi rajouté l'émission "En Aparté" ... pasque c'est bien
Hors ligne
#17 Le 03/04/2006, à 14:57
- maxfox
Re : [Script] CanalM Easy : Télécharger les émissions de C+ facilement
Bonjour Sh4d.
Pour les émissions en streaming tu peux t'orienter sur Televidilo qui est fait exprés pour ça :
http://televidilo.bouil.org/
Toutes les émissions de ce script ne sont pas pris en charge par televidilo mais tu peux rajouter facilement les émissions que tu veux (et par là même faire évoluer cette application).
Mais c'est sympa quand même de proposer ta propre version
Hors ligne
#18 Le 03/04/2006, à 17:28
- Sh4d
Re : [Script] CanalM Easy : Télécharger les émissions de C+ facilement
merci maxfox, je vais tester cette application
Hors ligne
#19 Le 04/04/2006, à 01:43
- Shura
Re : [Script] CanalM Easy : Télécharger les émissions de C+ facilement
@ maxfox :
Effectivement lorsque je fais : locate lib | zenity --progress --pulsate, la barre n'est pas animée.
En plus dans le terminal, j'ai ces 2 lignes qui tournent en boucle (obligé de killer le processus) :
(zenity:7615): Gtk-CRITICAL **: gtk_progress_bar_pulse: assertion `GTK_IS_PROGRESS_BAR (pbar)' failed
(zenity:7615): GLib-GObject-WARNING **: invalid unclassed pointer in cast to `GtkProgressBar'
Dernière modification par Shura (Le 04/04/2006, à 01:44)
Hors ligne
#20 Le 13/04/2006, à 08:46
- Isaric
Re : [Script] CanalM Easy : Télécharger les émissions de C+ facilement
Super ce script
Est-il extensible pour permettre d'enregistrer du streaming (son ou vidéo) en indiquant l'url ?
Un peu comme Fricorder (qui ne permet pas actuellement de récupérer autre chose que la TV freebox)
mais en indiquant une url de cette playlist
Dernière modification par Isaric (Le 13/04/2006, à 08:47)
"Être bahá'í signifie simplement aimer la terre toute entière, aimer l'humanité et essayer de la servir, travailler pour la paix universelle et la famille humaine" 'Abdul'l-Bahá
"Vouloir s'ouvrir aux autres n'est pas une preuve de faiblesse, c'est une preuve d'intelligence" Matthieu Ricard.
Hors ligne
#21 Le 13/04/2006, à 09:54
- coubi64
Re : [Script] CanalM Easy : Télécharger les émissions de C+ facilement
Ca a l'air sympa ce script, je vais tester.
Un petite question "hors sujet": j'aimerais apprendre le langage script mais je m'y perds un peu (bash, sh, python, etc....). Où puis je avoir un peu de doc pour mieux comprendre et débuter?
Merci.
Hors ligne
#22 Le 13/04/2006, à 12:16
- maxfox
Re : [Script] CanalM Easy : Télécharger les émissions de C+ facilement
Bonjour Isaric.
On peut, à prioris, y rajouter assez facilement n'importe quel flux utilisant le protocole mms.
Sinon, toujours pour le mms, le paquet "mimms" (en ligne de commande) est trés simple à utiliser.
Concernant l'enregistrement des radios streamtuner me semble quand même beaucoup plus adapté.
Bonjour coubi64.
Pour bash j'ai recupéré entre autres :
- "Introtuction à l'écriture de scripts shell : les bases", ainsi que les autres parties.
- "Introduction aux scripts BASH".
- "Les secrets sombres et cachés de Bash"
Tu devrais facilement les trouver en googlelisant.
Pour Python tout le monde conseil "Apprendre à programmer avec Python", je crois me souvenir que l'url pour le récupérer à été donnée par quelqu'un, quelque part dans la section "Dévelopemment - Programmation". Il est sinon trés facilement trouvable sur support papier.
Bon courage.
Hors ligne
#23 Le 13/04/2006, à 14:10
- Isaric
Re : [Script] CanalM Easy : Télécharger les émissions de C+ facilement
Merci,
l'enregistrement des radios streamtuner
Cela ne marche pas lorsque je clique sur le bouton vert enregistrer (essai sur dapper)
Et il y a un problème avec streamtuner
Dernière modification par Isaric (Le 13/04/2006, à 20:23)
"Être bahá'í signifie simplement aimer la terre toute entière, aimer l'humanité et essayer de la servir, travailler pour la paix universelle et la famille humaine" 'Abdul'l-Bahá
"Vouloir s'ouvrir aux autres n'est pas une preuve de faiblesse, c'est une preuve d'intelligence" Matthieu Ricard.
Hors ligne
#24 Le 13/04/2006, à 16:12
- gnome06
Re : [Script] CanalM Easy : Télécharger les émissions de C+ facilement
Peut-être serait-il intéressant que tu mette ton script dans le wiki !
Cette page me semble adaptée :http://doc.ubuntu-fr.org/applications/nautilus_scripts
Merci pour le script
gnome06
Besoin d'un compte gMail ?
Il me reste 50 invitations, contactez-moi !
Hors ligne
#25 Le 13/04/2006, à 17:43
- wra
Re : [Script] CanalM Easy : Télécharger les émissions de C+ facilement
Peut-être serait-il intéressant que tu mette ton script dans le wiki !
Cette page me semble adaptée :http://doc.ubuntu-fr.org/applications/nautilus_scripts
Merci pour le script
Salut,
Merci pour le script tout d' abord c'est très pratique je lance trois-quatre dl en même temps et quand je reviens tout y est.
Juste pour dire que ça marche aussi sur KDE 3.5.2 sous dapper
wra
Hors ligne