Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#501 Le 26/09/2008, à 13:21

beudbeud

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

ça passe le samedi normalement le groland


Télécharger les émissions de Arte +7 avec Arte +7 recorder
Theme pour Ubuntu Bisigi Project

Vostro 1510 Ubuntu 10.04

Hors ligne

#502 Le 26/09/2008, à 13:42

Ras'

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

Pourtant l'adresse à pas changé, je vais essayer de voir si c'est pas le même genre de problème que pour les PJ*


Va t'faire shampouiner par le compteur_V2 en timezone[Canada/Eastern] !
 
Les types awesome n'ont rien à prouver. À personne.
'k bye là

Hors ligne

#503 Le 26/09/2008, à 13:49

beudbeud

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

merci Ras' pour ton courage


Télécharger les émissions de Arte +7 avec Arte +7 recorder
Theme pour Ubuntu Bisigi Project

Vostro 1510 Ubuntu 10.04

Hors ligne

#504 Le 28/09/2008, à 12:43

beudbeud

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

voila un petit retour de la version beta

- ma playlist ne fonctionne pas car l'extension des fichier dans le fichier playlist est mp4 alors que le programme télécharge des flv
- la playlist n'est pas déplacé dans le dossier playlist
-un dossier PID est créé dans le dossier canal+
-et un fichier nohup est créé dans le dossier videos


Télécharger les émissions de Arte +7 avec Arte +7 recorder
Theme pour Ubuntu Bisigi Project

Vostro 1510 Ubuntu 10.04

Hors ligne

#505 Le 01/10/2008, à 23:55

Legion.nux

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

Ils changent vraiment toutes les 5 minutes leur manière de classer les vidéos hmm

Pour ceux qui voudrait la fonction toute simple pour download vite fait:

function dl_cplus
{
  ID=$( wget -q -O - $1 | grep "aVideos\[$d\]" | grep "CONTENT_ID" | cut -f2 -d '"' | head -n 1 )
  page="http://www.canalplus.fr/flash/xml/module/embed-video-player/embed-video-player.php?video_id=$ID"
  VIDEO=$( wget -q -O - $page | grep -o "http://[^ ]*H.flv" )
  #echo $VIDEO
  wget $VIDEO
}

avant on faisait un
$( wget -q -O - $1 | tr "/." "\n" | grep "_image_L" | sed -e 's/_image_L/_video_H.flv/g' | grep $date )
mais c'est obsolète avec leur nouvelle manière de faire...

il suffit après d'appeler la fonction dl_cplus avec la bonne url
exemple pour le zapping:
dl_cplus "http://www.canalplus.fr/index.php?pid=1830"

sinon la variable $d permet de donner quel jour on souhaite récup...
ex: si d=0  alors on choppe la vidéo du jour
d=1 la veille etc...

J'ai surtout testé sur le Zapping voir pour les autres émissions... mais l'ancien script fonctionnait avec Groland aussi donc y'a pas de raison...

un code un peut plus complet serait par exemple:

#!/bin/bash                                                                                                                                                   

#chemin à changer en fonction d'ou vous voulez stocker les vidéos                                                                                                                                       
cd /multimedia/Canal_Plus


case "$1" in
 1)
   URL="http://www.canalplus.fr/index.php?pid=1830"
   NOM="Zapping"
   ;;
 2)
   URL="http://www.canalplus.fr/index.php?pid=1787"
   NOM="Groland"
   ;;
 3)
   URL="http://www.canalplus.fr/index.php?pid=1784"
   NOM="Guignols"
   ;;
 *)
   URL="http://www.canalplus.fr/index.php?pid=1830"
   NOM="Zapping"
esac


if [[ -z $2 ]]
  then d="0"
  else d=$2
fi

date=`date +%y%m%d --date ''$d' days ago'`
fdate=`date +%d/%m/%y --date ''$d' days ago'`
echo "Téléchargement :: "$NOM" :: du "`date +%A\ %d\ %B\ %Y --date ''$d' days ago'`" en cours..."

function dl_cplus
{
  INDEX=$( wget -q -O - $1 | grep "aVideos\[" | grep "CONTENT_VNC_TITRE" | grep $fdate | cut -f2 -d '[' | sed -e 's/]//g' )
  ID=$( wget -q -O - $1 | grep "aVideos\[$INDEX\]" | grep "CONTENT_ID" | cut -f2 -d '"' | head -n 1)
  page="http://www.canalplus.fr/flash/xml/module/embed-video-player/embed-video-player.php?video_id=$ID"
  VIDEO=$( wget -q -O - $page | grep -o "http://[^ ]*H.flv" )
  #echo $VIDEO
  if ! ($VIDEO) then
    wget $VIDEO
    echo "fin du téléchargement: "$NOM
  else
    echo "Pas de vidéo trouvée à ce jour"
  fi
}

dl_cplus $URL


echo "Done."

après il suffit de lancer ce script dans un terminal...
Le script attend jusqu'à deux paramètre (si aucun paramètre n'est envoyé il télécharge par défaut le Zapping à la date du jour).
Le premier paramètre est le type d'émission contenu dans le switch, il y en à 3 ici, Zapping, Groland et les Guignols
Le second paramètre permet de passer une variable pour déterminer le jour souhaité par rapport à la date du jour, 0 désignant la date du jour, 1 la veille etc...
exemple si on a mis le script dans un fichier nommé "cplus.sh":

./cplus.sh 1 1

dans ce cas la on télécharge le zapping de la veille

Dernière modification par Legion.nux (Le 11/10/2008, à 17:34)

Hors ligne

#506 Le 05/10/2008, à 00:58

Merci_RAS

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

hello

Super script pratique bien le bravo et merci RAS !

Par contre un problème chez moi : il ne parvient pas à déplacer les fichiers, du coup, pas de conversion et pas de classement dans les dossiers.
Il y a un message d'erreur quand la commande mv est appellée. Comme si la variable VIDEO de la fonction download était vide...
Et puis, le script pourrait vérifier si un fichier est déja présent en local avant de commencer le wget.

Voilà pour mon retour.

#507 Le 06/10/2008, à 21:26

Merci_RAS

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

Voilà pour illustrer mon propos :

Téléchargement des émissions du 05/10/08 en cours... 
--21:22:08--  http://vod-flash.canalplus.fr/WWWPLUS/PROGRESSIF/0810/ZAPPING_EMISSION_081006_CAN_56236_video_L.flv
           => `ZAPPING_EMISSION_081006_CAN_56236_video_L.flv'
Résolution de vod-flash.canalplus.fr... 80.231.198.188, 80.231.198.145, 80.231.198.180
Connexion vers vod-flash.canalplus.fr|80.231.198.188|:80... connecté.
requête HTTP transmise, en attente de la réponse... 200 OK
Longueur: 14 460 142 (14M) [video/x-flv]

100%[========================================================================================================>] 14 460 142   681.12K/s    ETA 00:00

21:22:32 (601.52 KB/s) - « ZAPPING_EMISSION_081006_CAN_56236_video_L.flv » sauvegardé [14460142/14460142]

mv: ne peut évaluer `PROGRESSIF.mp4': Aucun fichier ou dossier de ce type
mv: ne peut évaluer `PROGRESSIF': Aucun fichier ou dossier de ce type

#508 Le 06/10/2008, à 21:38

Ras'

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

en fait y'a un petit souci du à une mauvaise programmation, et un autre qui est que j'ai vraiment pas le temps ni le courage de regarder ça maintenant...
J'expliquerais plus tard mais en attendant supprime la ligne "CONVERT=" de ton fichier de config (a part si en fait tu veux convertir tes vidéos et dans ce cas c'est vraiment pas normal qu'il se comporte comme ça)


Va t'faire shampouiner par le compteur_V2 en timezone[Canada/Eastern] !
 
Les types awesome n'ont rien à prouver. À personne.
'k bye là

Hors ligne

#509 Le 15/10/2008, à 14:08

Seth_

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

Salut,

Tout d'abord merci beaucoup pour ce script.

Mais j'ai exactement le même souci que Merci_RAS et je veux effectivement convertir mes vidéos dans le format pour iPod, j'ai donc bien la ligne CONVERT=IPOD dans le fichier de config. Mais rien ne se passe et les fichiers ne sont pas rangés...

Téléchargement des émissions du 14/10/08 en cours... 
--13:40:56--  http://vod-flash.canalplus.fr/WWWPLUS/PROGRESSIF/0810/ZAPPING_EMISSION_081014_AUTO_274_43_video_L.flv
           => `ZAPPING_EMISSION_081014_AUTO_274_43_video_L.flv'
Résolution de vod-flash.canalplus.fr... 84.96.146.209, 84.96.146.208
Connexion vers vod-flash.canalplus.fr|84.96.146.209|:80... connecté.
requête HTTP transmise, en attente de la réponse... 200 OK
Longueur: 15 321 267 (15M) [video/x-flv]

100%[========================================================================================>] 15 321 267    44.73K/s    ETA 00:00

13:56:07 (16.48 KB/s) - « ZAPPING_EMISSION_081014_AUTO_274_43_video_L.flv » sauvegardé [15321267/15321267]

mv: ne peut évaluer `PROGRESSIF.mp4': Aucun fichier ou dossier de ce type
mv: ne peut évaluer `PROGRESSIF': Aucun fichier ou dossier de ce type

Hors ligne

#510 Le 15/10/2008, à 17:33

Ras'

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

Tu as bien installé les dépendances nécessaires ? Lors de la config on te les donne normalement.


Va t'faire shampouiner par le compteur_V2 en timezone[Canada/Eastern] !
 
Les types awesome n'ont rien à prouver. À personne.
'k bye là

Hors ligne

#511 Le 15/10/2008, à 22:55

Seth_

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

Alors oui, au départ j'ai juste mis les dépendances pour iPod. Après j'ai même essayé avec les autres... sans succès.

Le problème à l'air de venir de la fonction 'copie' à la ligne 823 :

VIDEO=$( echo $url | cut -c 31- | cut -f2 -d "/" )

La variable VIDEO doit être assignée  à 'PROGRESSIF' par erreur (l'adresse étant http://vod-flash.canalplus.fr/WWWPLUS/PROGRESSIF/0810/ZAPPING_EMISSION_081014_AUTO_274_43_video_L.flv)

En utilisant, par exemple

VIDEO=$(echo $url | cut -f7 -d "/")

on obtient réellement le nom de fichier (mais il doit y avoir une méthode plus propre (i.e. moins dépendante le la forme de l'URL) pour le faire.

Hors ligne

#512 Le 15/10/2008, à 23:19

Ras'

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

Je croyais avoir corrigé ça, me rapelles plus, tu utilises quelle version du script ?
la béta que j'ia posté dans ce topic ou l'ancienne qui date d'avant les vacances a peu près ?


Va t'faire shampouiner par le compteur_V2 en timezone[Canada/Eastern] !
 
Les types awesome n'ont rien à prouver. À personne.
'k bye là

Hors ligne

#513 Le 15/10/2008, à 23:47

Seth_

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

C'est la v1.304 que j'ai.
Mais il est pas censé se mettre à jour automatiquement ? (désolé j'ai pas lu toutes les pages du topic big_smile )

Hors ligne

#514 Le 16/10/2008, à 17:03

Seth_

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

Bon effectivement le problème dont je parlais a été corrigé dans la beta à la page précédente

Dernière modification par Seth_ (Le 16/10/2008, à 17:04)

Hors ligne

#515 Le 16/10/2008, à 18:58

Ras'

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

Oui mais j'ai pas mis la beta en ligne big_smile Ce sera bientôt fait.


Va t'faire shampouiner par le compteur_V2 en timezone[Canada/Eastern] !
 
Les types awesome n'ont rien à prouver. À personne.
'k bye là

Hors ligne

#516 Le 17/10/2008, à 09:56

steffle

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

Bonjour bonjour,

tout d'ab merci ras bien pour ce script qui chez moi fonctionne a merveille.. j'ai pas essayé pour toutes les emissions mais ca fait tellement du bien de pouvoir voir le zapping sans se taper le site canal!!

Bon alors moi j'vais être un peu relou mais voila, une émission que j'aimerais bien pouvoir récupérer de la même façon c'est "ce soir ou jamais" sur france 3... leur site est bien nul aussi et ça sera vraiment la grande classe de pouvoir récupérer ça! Bon alors je sais bien que ça risque d'être pas du tout pareil que pour canal et que c'est du travail tout ca mais moi je suis complètement incapable de faire ca!

Alors voilou l'idée est lancée on sait jamais...si il y en as qui savent comment faire et que ca intéresse je suis preneur!

steffle

Hors ligne

#517 Le 17/10/2008, à 14:03

mobidyc

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

Bonjour,

je viens d'essayer et j'aurais deux petits conseils/amélioration à proposer.

premièrement: rajouter l'argument -c à wget afin de pouvoir reprendre un téléchargement interrompu.

deuxièmement:
je me retrouve avec l'erreur suivante:

Fin du téléchargement de l'émission : les guignols de l'info
mv: ne peut évaluer `PROGRESSIF': Aucun fichier ou dossier de ce type

en regardant le code je vois ceci:

VIDEO=$( echo $url | cut -c 31- | cut -f2 -d "/" )

ce qui n'est pas bon, car:

$> url="http://vod-flash.canalplus.fr/WWWPLUS/PROGRESSIF/0810/LES_GUIGNOLS_EMISSION_081016_AUTO_311_169_video_H.flv"
$> echo $url | cut -c 31- | cut -f2 -d "/"
PROGRESSIF

voici la bonne méthode (selon moi):

$> echo ${url##*/}
LES_GUIGNOLS_EMISSION_081016_AUTO_311_169_video_H.flv

de toutes façons, merci bien pour ce script bien sympathique

cdt,
Mobidyc

Hors ligne

#518 Le 17/10/2008, à 14:13

mobidyc

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

RE-Hello,

juste une remarque:
s'il pouvait y avoir une indentation correcte, le script pourrait être un peu plus lisible
car

if [[ -z $2 ]]
then
{
aVideos=something
}
fi

n'est pas très beau à lire, voici plus lisible:

if [ -z $2 ]
   then
      aVideos=something
   else
      aVideos=somethingelse
fi

ou encore s'il n'y a pas besoin de else (mais c'est moins standard cependant):

[ -z $2 ] && {
   aVideos=something
}

perso, je code avec vim et je paramètre les tabulations à 3 caractères (:set tabstop=3), ça donne une bonne indentation je trouve.

cdt,
Mobidyc

Hors ligne

#519 Le 19/10/2008, à 20:34

philpep-tlse

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

Salut, Ras', je voulais encore te remercier et te dire que ton petit travail sur canal m'a permis d'améliorer mes connaissances, et pas seulement en script bash !

J'ai en effet crée un ebuild (équivalent d'un paquet sur Gentoo) de canal. Pour l'instant il ne fait pas grand chose et s'occupe juste de l'installation. J'ai rajouté un patch pour fixer quelques problèmes :
le sheebang :

#!/usr/bin/env bash

Et j'ai supprimé la fonction de mise à jours automatique du script (trop dangereux).

Bref, ça marche bien, le résultat est dispo ici : http://philpep.ath.cx/portage/www-apps/canal/
(Attention, mon serveur est aussi mon desktop, donc philpep.ath.cx répond que si mon ordi est allumé)

J'espère arriver à y inclure des USE, (genre sur les codecs audio, cron etc.).
Bref je me suis beaucoup amusé a faire cet ebuild (qui est mon premier ebuild, mais surement pas le dernier \o/ )

Dernière modification par philpep-tlse (Le 21/11/2008, à 04:01)


le "lol" est aux boulets ce que le ";" est aux programmeurs
blog | Wiki Fvwm | Essayez le Window Manager From Scatch | Topic WMFS

Hors ligne

#520 Le 21/10/2008, à 11:24

Ras'

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

Vraiment pas le temps de m'occuper de ça, mon temps libre je préfère me reposer que me prendre la tête la dessus. D'autant que quand j'aurais moins de trucs à faire j'aimerais tout autant me plonger dans un nouvaeu projet maintenant que je retrouve la motivation.
J'ai même pas le courage de regarder pourquoi les pépites sur le net marchent plus, alors que ça doit être tout con...

Enfin bon. Je vous rapelles quand même que c'est un projet sous license GPL, et que sans aller jusqu'a quasiment tout réécrire comme l'a fait yurek, vous pouvez changer 2-3 babioles sans problèmes, mailez les moi et je mettrais la mise à jour sur le net, ou changer directement l'url de la mise à jour auto vers votre propre serveur si vous pouvez maintenir le projet.

La dernière version contenant quelques commentaires/explications sur le fonctionnement du script était justement destinée au passage du projet à un/des successeur(s) vu que je pensais plus pouvoir le maintenir.
Je l'ai posté une ou deux pages plus tôt, basez vous sur celle là si vous voulez faire des changements wink

Désolé de pas m'occuper de ça plus longtemps mais je suis sur que certains pourront s'en occuper (et vous pouvez en apprendre beaucoup, au moins autant que j'en ai appris en programmant ça).


Merci, et bonne journée wink


Va t'faire shampouiner par le compteur_V2 en timezone[Canada/Eastern] !
 
Les types awesome n'ont rien à prouver. À personne.
'k bye là

Hors ligne

#521 Le 21/10/2008, à 12:02

jean bono

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

merci a toi pour le tres bon boulot
ce fut un merveilleux projet et j'ai adore suivre son evolution
bravo

Hors ligne

#522 Le 21/10/2008, à 12:50

Ras'

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

C'est pas fini hein, on change juste de mainteneur/développeur (pas sur qu'il y ait énormément de développement à faire ? en tout cas j'aurais plus d'idée lol)


Va t'faire shampouiner par le compteur_V2 en timezone[Canada/Eastern] !
 
Les types awesome n'ont rien à prouver. À personne.
'k bye là

Hors ligne

#523 Le 23/10/2008, à 11:15

ano

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

merci pour ce script

#524 Le 26/10/2008, à 17:47

Slystone

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

J'aurais une question pour toi Ras (ou quelqu'un d'autre capable d'y répondre) comme tu t'es déjà intéressé au sujet :
Je voulais télécharger avec wget des podcasts de la BBC pour mes études à partir de cette page : http://www.bbc.co.uk/radio/podcasts/today/
J'ai donc entré dans la console :
penguin@penguin-desktop:~$ wget -r -l1 --no-parent http://downloads.bbc.co.uk/podcasts/radio4/today/

Il me renvoie ce message d'erreur :
Connexion vers downloads.bbc.co.uk|212.58.251.211|:80... connecté.
requête HTTP transmise, en attente de la réponse... 403 Forbidden
16:45:19 ERREUR 403: Forbidden.

Cela signifie t-il que je ne peux pas les télécharger avec wget, et encore moins automatiser le téléchargement avec un script sur ton modèle pour les émissions de Canal+ ?

Merci d'avance
Libristement


«Rigid, the skeleton of habit alone upholds the human frame.» - Virginia Woolf.

Hors ligne

#525 Le 26/10/2008, à 18:00

beudbeud

Re : [script/bash] Télécharger de nombreuses quotidiennes de canal+

Slystone a écrit :

J'aurais une question pour toi Ras (ou quelqu'un d'autre capable d'y répondre) comme tu t'es déjà intéressé au sujet :
Je voulais télécharger avec wget des podcasts de la BBC pour mes études à partir de cette page : http://www.bbc.co.uk/radio/podcasts/today/
J'ai donc entré dans la console :
penguin@penguin-desktop:~$ wget -r -l1 --no-parent http://downloads.bbc.co.uk/podcasts/radio4/today/

Il me renvoie ce message d'erreur :
Connexion vers downloads.bbc.co.uk|212.58.251.211|:80... connecté.
requête HTTP transmise, en attente de la réponse... 403 Forbidden
16:45:19 ERREUR 403: Forbidden.

Cela signifie t-il que je ne peux pas les télécharger avec wget, et encore moins automatiser le téléchargement avec un script sur ton modèle pour les émissions de Canal+ ?

Merci d'avance
Libristement

sur intrepid je croi squ'un plugin existe pour totem qui récupère les vidéos de la bbc


Télécharger les émissions de Arte +7 avec Arte +7 recorder
Theme pour Ubuntu Bisigi Project

Vostro 1510 Ubuntu 10.04

Hors ligne