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.

#2676 Le 15/02/2013, à 18:14

mulder29

Re : TVDownloader: télécharger les médias du net !

Et je reçois
python: can't open file
alors que j'ai installé Python 2.7.3, hier. hmm

Hors ligne

#2677 Le 15/02/2013, à 18:26

k3c

Re : TVDownloader: télécharger les médias du net !

si tu tapes

which python

ça affiche quoi ?

Dernière modification par k3c (Le 15/02/2013, à 18:28)


Archlinux sur Xiaomi Air 13

Hors ligne

#2678 Le 15/02/2013, à 19:20

mulder29

Re : TVDownloader: télécharger les médias du net !

ça affiche :
/usr/bin/python

Hors ligne

#2679 Le 15/02/2013, à 21:38

JessicaNichenin

Re : TVDownloader: télécharger les médias du net !

j'utilise la version 0.6  du script et cela ne marche plus

python get.py http://videos.tf1.fr/unforgettable/episode-16-saison-01-la-fille-de-l-air-7817948.html
['rtmpdump', '-r', 'rtmpte://wske.wat.tv/ondemand/mp4:vod/H264-384x288/31/87/9433187.h264', '-c', '1935', '-m', '10', '-w', 'ebb7a6fbdc9021db95e2bd537d73fabb9717508f085bea50bde75f7a8e27698c', '-x', '343642', '-o', 'episode-16-saison-01-la-fille-de-l-air-7817948.mp4', ' --resume']
Erreur : le sous-process s'est terminé avec (le code d'erreur est 1)
Erreur : le sous-process s'est terminé avec (le code d'erreur est 1)
Erreur : le sous-process s'est terminé avec (le code d'erreur est 1)
Erreur : le sous-process s'est terminé avec (le code d'erreur est 1)

Merci pour ce merveilleux script

Hors ligne

#2680 Le 15/02/2013, à 23:17

k3c

Re : TVDownloader: télécharger les médias du net !

Cette version est peu testée, mais télécharge les 3 épisodes de Unforgettable

# -*- coding:utf-8 -*-
# TF1 TMC NT1 HD1 version 0.7 par k3c, correction de 11gjm, modif pour TF1 unforgettable
import subprocess, optparse, re, sys, shlex
import socket
from urllib2 import urlopen
import time, md5, random, urllib2
import bs4 as BeautifulSoup
listeUserAgents = [ 'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_5; fr-fr) AppleWebKit/525.18 (KHTML, like Gecko) Version/3.1.2 Safari/525.20.1',
                                                'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.186 Safari/535.1',
                                                'Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.2.149.27 Safari/525.',
                                                'Mozilla/5.0 (X11; U; Linux x86_64; en-us) AppleWebKit/528.5+ (KHTML, like Gecko, Safari/528.5+) midori',
                                                'Mozilla/5.0 (Windows NT 6.0) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.107 Safari/535.1',
                                                'Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-us) AppleWebKit/312.1 (KHTML, like Gecko) Safari/312',
                                                'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.12 Safari/535.11',
                                                'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.8 (KHTML, like Gecko) Chrome/17.0.940.0 Safari/535.8' ]

def get_wat(id):
    def base36encode(number):
        if not isinstance(number, (int, long)):
            raise TypeError('number must be an integer')
        if number < 0:
            raise ValueError('number must be positive')
        alphabet = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'
        base36 = ''
        while number:
            number, i = divmod(number, 36)
            base36 = alphabet[i] + base36
        return base36 or alphabet[0]
    ts = base36encode(int(time.time()))
    timesec = hex(int(ts, 36))[2:]
    while(len(timesec)<8):
        timesec = "0"+timesec
    token = md5.new("9b673b13fa4682ed14c3cfa5af5310274b514c4133e9b3a81e6e3aba00912564/web/"+str(id)+""+timesec).hexdigest()
    id_url1 = "http://www.wat.tv/get/web/"+str(id)+"?token="+token+"/"+timesec+"&getURL=1&country=FR"
    return id_url1

def main():
gg@gg-SATELLITE-L755:~$ cat !$
cat hd3.py
# -*- coding:utf-8 -*-
# TF1 TMC NT1 HD1 version 0.7 par k3c, correction de 11gjm, modif pour TF1 unforgettable
import subprocess, optparse, re, sys, shlex
import socket
from urllib2 import urlopen
import time, md5, random, urllib2
import bs4 as BeautifulSoup
listeUserAgents = [ 'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_5; fr-fr) AppleWebKit/525.18 (KHTML, like Gecko) Version/3.1.2 Safari/525.20.1',
                                                'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.186 Safari/535.1',
                                                'Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.2.149.27 Safari/525.',
                                                'Mozilla/5.0 (X11; U; Linux x86_64; en-us) AppleWebKit/528.5+ (KHTML, like Gecko, Safari/528.5+) midori',
                                                'Mozilla/5.0 (Windows NT 6.0) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.107 Safari/535.1',
                                                'Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-us) AppleWebKit/312.1 (KHTML, like Gecko) Safari/312',
                                                'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.12 Safari/535.11',
                                                'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.8 (KHTML, like Gecko) Chrome/17.0.940.0 Safari/535.8' ]

def get_wat(id):
    def base36encode(number):
        if not isinstance(number, (int, long)):
            raise TypeError('number must be an integer')
        if number < 0:
            raise ValueError('number must be positive')
        alphabet = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'
        base36 = ''
        while number:
            number, i = divmod(number, 36)
            base36 = alphabet[i] + base36
        return base36 or alphabet[0]
    ts = base36encode(int(time.time()))
    timesec = hex(int(ts, 36))[2:]
    while(len(timesec)<8):
        timesec = "0"+timesec
    token = md5.new("9b673b13fa4682ed14c3cfa5af5310274b514c4133e9b3a81e6e3aba00912564/web/"+str(id)+""+timesec).hexdigest()
    id_url1 = "http://www.wat.tv/get/web/"+str(id)+"?token="+token+"/"+timesec+"&getURL=1&country=FR"
    return id_url1

def main():
    # timeout en secondes
    socket.setdefaulttimeout(90)
    usage   = "usage: python tmc_tf1.py     [options] <url de l'emission>"
    parser  = optparse.OptionParser( usage = usage )
    parser.add_option( "--nocolor",         action = 'store_true', default = False, help = 'desactive la couleur dans le terminal' )
    parser.add_option( "-v", "--verbose",   action = "store_true", default = False, help = 'affiche les informations de debugage' )
    ( options, args ) = parser.parse_args()
    if( len( args ) > 2 or args[ 0 ] == "" ):
        parser.print_help()
        parser.exit( 1 )
    debut_id = ''
    html = urlopen(sys.argv[1]).read()
    nom = sys.argv[1].split('/')[-1:][0]
    no = nom.split('.')[-2:][0]
    soup = BeautifulSoup.BeautifulSoup(html)
    if 'tmc.tv' in str(soup) or 'tf1.fr' in str(soup):
        debut_id = str(soup.find('div', attrs={'class' : 'unique' }))
    if 'nt1.tv' in str(soup) or 'hd1.tv' in str(soup):
        debut_id = str(soup.find('section', attrs={'class' : 'player-unique' }))
    id = [x.strip() for x in re.findall("mediaId :([^,]*)", debut_id)][0]
    id_url1 = get_wat(id)
    opener = urllib2.build_opener()
    opener.addheaders = [('User-agent', random.choice(listeUserAgents))]
    data = opener.open(id_url1).read()
    opener.close()
    if data[0:4] == 'http':
        ua = random.choice(listeUserAgents)
        arguments = 'curl "%s" -L -g -A "%s" -o "%s.mp4"' % (data, ua, no)
        print arguments
        process = subprocess.Popen(arguments, stdout=subprocess.PIPE, shell=True).communicate()[0]
    if data[0:4] == 'rtmp':
        host = re.search('rtmpte://(.*)/ondemand', data).group(1)
        host = host.replace('rtmpte', 'rtmpe')
        data0 = re.search('rtmpte://(.*)h264', data).group(0)
        cmds = 'rtmpdump -r "%s" -c 443 -m 10 -w b23434cbed89c9eaf520373c4c6f26e1f7326896dee4b1719e8d9acda0c19e99 -x 343427  -o "%s.mp4" " --resume"' % (data0, str(no))
        f = open(str(no), 'w')
        f.write(cmds)
        f.close()
        arguments = shlex.split( cmds )
        print arguments
        cpt = 0 
        while True:
            p = subprocess.Popen( arguments,
                stdout=subprocess.PIPE, stderr=subprocess.PIPE)
            stdout, stderr = p.communicate()
            if p.returncode != 0:
                print "Erreur : le sous-process s\'est terminé avec (le code d\'erreur est " + str(p.returncode) + ")"
#                status = False
                if cpt > 5:
                    break
                cpt += 1
                time.sleep(3) 
            else:
#                status = True
                break
if __name__ == "__main__":

Archlinux sur Xiaomi Air 13

Hors ligne

#2681 Le 16/02/2013, à 00:15

angeline

Re : TVDownloader: télécharger les médias du net !

Bonsoir à tous.

Ce soir, je découvre que "www.francetvinfo.fr" a encore changé de protocole, et plus possible télécharger le journal de France2 le 20 heures.

Je suis en Amérique du sud.
Est-ce vrai aussi pour vous ?

Merci.


ıɔǝɔ ǝɯɯoɔ xnǝıɯ ʇsǝ,ɔ nʇunqnʞ

Hors ligne

#2682 Le 16/02/2013, à 07:52

gl38

Re : TVDownloader: télécharger les médias du net !

Le journal de 20h de France 2 du 15/2 se télécharge normalement chez moi (en France).
Cordialement,
Guy

Hors ligne

#2683 Le 16/02/2013, à 09:09

k3c

Re : TVDownloader: télécharger les médias du net !

@ angeline

avec pluzzdl 0.9.4 je viens de télécharger le journal de 20 h

gg@gg-SATELLITE-L755:~$ pluzzdl -v http://pluzz.francetv.fr/videos/jt20h.html
[DEBUG   ]  main.py             pluzzdl 0.9.4 avec Python 2.7.3 (i686)
[DEBUG   ]  main.py             OS : Linux #58-Ubuntu SMP Thu Jan 24 15:51:02 UTC 2013
[DEBUG   ]  Navigateur.py       GET http://pluzz.francetv.fr/videos/jt20h.html
[DEBUG   ]  PluzzDL.py          ID de l'émission : 77106215
[DEBUG   ]  Navigateur.py       GET http://www.pluzz.fr/appftv/webservices/video/getInfosOeuvre.php?mode=zeri&id-diffusion=77106215
[DEBUG   ]  PluzzDL.py          Lien MMS : mms://a988.v101995.c10199.e.vm.akamaistream.net/7/988/10199/3f97c7e6/ftvigrp.download.akamai.com/10199/cappuccino/production/publication/Autre/Autre/2013/S07/J5/738525_jt20h_20130215.wmv
[DEBUG   ]  PluzzDL.py          Lien RTMP : None
[DEBUG   ]  PluzzDL.py          URL manifest : http://ftvodhdsecz-f.akamaihd.net/z/streaming-adaptatif/2013/S07/J5/77106215-20130215-,398,632,934,k.mp4.csmil/manifest.f4m
[DEBUG   ]  PluzzDL.py          URL m3u8 : http://medias2.francetv.fr/catchup-mobile/france-dom-tom/non-token/non-drm/m3u8/2013/S07/J5/77106215-20130215.m3u8
[DEBUG   ]  PluzzDL.py          Utilisation de DRM : non
[DEBUG   ]  PluzzDL.py          Chaine : France 2
[DEBUG   ]  Historique.py       Historique chargé
[DEBUG   ]  Navigateur.py       GET http://medias2.francetv.fr/catchup-mobile/france-dom-tom/non-token/non-drm/m3u8/2013/S07/J5/77106215-20130215.m3u8
[DEBUG   ]  Navigateur.py       GET http://medias2.francetv.fr/catchup-mobile/france-dom-tom/non-token/non-drm/m3u8/2013/S07/J5/77106215-20130215-840k.m3u8
[DEBUG   ]  PluzzDL.py          Nombre de fragments : 242
[INFO    ]  PluzzDL.py          Début du téléchargement des fragments

et ça se finit par

[DEBUG   ]  Navigateur.py       GET http://medias2.francetv.fr/catchup-mobile/france-dom-tom/non-token/non-drm/m3u8/2013/S07/J5/77106215-20130215-840k/77106215-20130215-240.ts
[DEBUG   ]  Navigateur.py       GET http://medias2.francetv.fr/catchup-mobile/france-dom-tom/non-token/non-drm/m3u8/2013/S07/J5/77106215-20130215-840k/77106215-20130215-241.ts
[INFO    ]  PluzzDL.py          Fin du téléchargement
[INFO    ]  PluzzDL.py          Création du fichier MKV (vidéo finale) ; veuillez attendre quelques instants
[INFO    ]  PluzzDL.py          Fin !
[DEBUG   ]  Historique.py       Historique sauvé
gg@gg-SATELLITE-L755:~$ 

Archlinux sur Xiaomi Air 13

Hors ligne

#2684 Le 16/02/2013, à 10:29

mulder29

Re : TVDownloader: télécharger les médias du net !

Ah mince, et toujours pas de solution pour moi ? :S

Hors ligne

#2685 Le 16/02/2013, à 11:16

thom83

Re : TVDownloader: télécharger les médias du net !

Bonjour,

@ k3c
J'ai testé la version 0.7 ci-dessus (la partie inférieure) avec succès après avoir ajouté le «main()» qui va bien.
Est-il possible d'améliorer cette version en favorisant les variantes HD des émissions plutôt qu'en SD, quitte à ce que cela prenne plus de place sur le disque ?
Cela ferait une différence sur un écran un peu grand...

Dernière modification par thom83 (Le 16/02/2013, à 11:17)

Hors ligne

#2686 Le 16/02/2013, à 11:33

ynad

Re : TVDownloader: télécharger les médias du net !

@ mulder29

voila comment j'ai fait:

j'ai créer un répertoire D8

dans ce répertoire j'ai copier coller le script #2646 page 106 de k3C dans un éditeur de texte et sauvegarder en d8.py
dans le même répertoire j'ai ouvert un terminal et lancer la commande:

python d8.py http://www.d8.tv/d8-series/pid5313-d8-h.html

si la vidéo est toujours en ligne elle se charge dans ce répertoire

ce script est valable pour d8, k3c en a fait d'autres pour tf1 etc.

il y a pluzdl pour le site de pluzz.

espérant t'aider un peu...

Hors ligne

#2687 Le 16/02/2013, à 12:39

k3c

Re : TVDownloader: télécharger les médias du net !

@ thom83

je prux sortir un hack rapidement, quitte à faire propre plus tard


Archlinux sur Xiaomi Air 13

Hors ligne

#2688 Le 16/02/2013, à 13:05

mulder29

Re : TVDownloader: télécharger les médias du net !

On me met encore
m = re.search('\d{6}$',sys.argv[1])
bash: Erreur de syntaxe près du symbole inattendu « ( »
~$ if m is None:
>     try:
>         id = s.findAll('div',attrs={"class":u"block-common block-player-programme"})[0]('canal:player')[0]['videoid']
bash: Erreur de syntaxe près du symbole inattendu « ( »
~$     except:
Commande 'except:' non trouvée, vouliez-vous dire :
La commande 'except' du paquet 'qmail' (universe)
except: : commande introuvable
~$
Display all 2596 possibilities? (y or n)
~$ t 'imposiible de trouver l\'id de la  video'
>

Sans doute là que ça coince.

J'ai tapé la ligne de commande dans le Terminal, rien ne se passe.

(en revanche, ma flèche du curseur est devenue une croix)

Hors ligne

#2689 Le 16/02/2013, à 13:10

angeline

Re : TVDownloader: télécharger les médias du net !

@K3c,

Merci, j'ai le même début, mais pas la même fin  sad

cb@cb-desktop:~$ pluzzdl -v http://pluzz.francetv.fr/videos/jt20h.html
[DEBUG   ]  main.py             pluzzdl 0.9.4 avec Python 2.7.3 (i686)
[DEBUG   ]  main.py             OS : Linux #58-Ubuntu SMP Thu Jan 24 15:51:02 UTC 2013
[DEBUG   ]  Navigateur.py       GET http://pluzz.francetv.fr/videos/jt20h.html
[DEBUG   ]  PluzzDL.py          ID de l'émission : 77106215
[DEBUG   ]  Navigateur.py       GET http://www.pluzz.fr/appftv/webservices/video/getInfosOeuvre.php?mode=zeri&id-diffusion=77106215
[DEBUG   ]  PluzzDL.py          Lien MMS : mms://a988.v101995.c10199.e.vm.akamaistream.net/7/988/10199/3f97c7e6/ftvigrp.download.akamai.com/10199/cappuccino/production/publication/Autre/Autre/2013/S07/J5/738525_jt20h_20130215.wmv
[DEBUG   ]  PluzzDL.py          Lien RTMP : None
[DEBUG   ]  PluzzDL.py          URL manifest : http://ftvodhdsecz-f.akamaihd.net/z/streaming-adaptatif/2013/S07/J5/77106215-20130215-,398,632,934,k.mp4.csmil/manifest.f4m
[DEBUG   ]  PluzzDL.py          URL m3u8 : http://medias2.francetv.fr/catchup-mobile/france-dom-tom/non-token/non-drm/m3u8/2013/S07/J5/77106215-20130215.m3u8
[DEBUG   ]  PluzzDL.py          Utilisation de DRM : non
[DEBUG   ]  PluzzDL.py          Chaine : France 2
[DEBUG   ]  Historique.py       Historique chargé
[DEBUG   ]  Navigateur.py       GET http://medias2.francetv.fr/catchup-mobile/france-dom-tom/non-token/non-drm/m3u8/2013/S07/J5/77106215-20130215.m3u8
[DEBUG   ]  Navigateur.py       Forbidden
Traceback (most recent call last):
  File "/usr/share/pluzzdl/main.py", line 91, in <module>
    progressFnct = progressFnct )
  File "/usr/share/pluzzdl/PluzzDL.py", line 119, in __init__
    downloader.telecharger()
  File "/usr/share/pluzzdl/PluzzDL.py", line 259, in telecharger
    self.m3u8 = self.navigateur.getFichier( self.m3u8URL )
  File "/usr/share/pluzzdl/Navigateur.py", line 58, in getFichier
    page = self.urlOpener.open( requete, timeout = self.timeOut )
  File "/usr/lib/python2.7/urllib2.py", line 406, in open
    response = meth(req, response)
  File "/usr/lib/python2.7/urllib2.py", line 519, in http_response
    'http', request, response, code, msg, hdrs)
  File "/usr/lib/python2.7/urllib2.py", line 444, in error
    return self._call_chain(*args)
  File "/usr/lib/python2.7/urllib2.py", line 378, in _call_chain
    result = func(*args)
  File "/usr/lib/python2.7/urllib2.py", line 527, in http_error_default
    raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
urllib2.HTTPError: HTTP Error 403: Forbidden
[DEBUG   ]  Historique.py       Historique sauvé

Je sèche.
PS.: cela va si mal que cela en France... que les infos ne doivent pas sortir de l'hexagone ?
Edit: Oubliez la ligne au dessus... Avec Opera, cela se charge, mais très lentement, (en pointillés) du à mon internet très lent, et ce n'est pas regardable! D'où la nécessité de télécharger.

Dernière modification par angeline (Le 16/02/2013, à 13:25)


ıɔǝɔ ǝɯɯoɔ xnǝıɯ ʇsǝ,ɔ nʇunqnʞ

Hors ligne

#2690 Le 16/02/2013, à 14:05

k3c

Re : TVDownloader: télécharger les médias du net !

@ mulder29

tu exécutes du bash, pas du python

@ angeline

n'étant pas en France, il te faudrait un proxy France,non ?


Archlinux sur Xiaomi Air 13

Hors ligne

#2691 Le 16/02/2013, à 14:12

mulder29

Re : TVDownloader: télécharger les médias du net !

ok et comment je fais pour passer en mode "python" ? sad

Hors ligne

#2692 Le 16/02/2013, à 14:13

angeline

Re : TVDownloader: télécharger les médias du net !

@K3c

Par Opera ou Firefox, je ne passe pas par un proxy actuellement.

Avec Opera, j'ai droit à un bonus de 50 secondes de pub... qui fonctionne très bien !
Par Firefox, c'est bloqué par AdBlock, mais le journal dans tous les cas arrive trop lentement.

Le pb me parait autre part.


ıɔǝɔ ǝɯɯoɔ xnǝıɯ ʇsǝ,ɔ nʇunqnʞ

Hors ligne

#2693 Le 16/02/2013, à 14:53

angeline

Re : TVDownloader: télécharger les médias du net !

@Kc2
Si je récupère

[DEBUG   ]  PluzzDL.py          Lien MMS : mms://a988.v101995.c10199.e.vm.akamaistream.net/7/988/10199/3f97c7e6/ftvigrp.download.akamai.com/10199/cappuccino/production/publication/Autre/Autre/2013/S07/J5/738525_jt20h_20130215.wmv

que je change le "mms" en "rtsp" le journal est téléchargeable par mon downloader préféré !

Mais pas par "pluzzdl"


ıɔǝɔ ǝɯɯoɔ xnǝıɯ ʇsǝ,ɔ nʇunqnʞ

Hors ligne

#2694 Le 16/02/2013, à 22:22

angeline

Re : TVDownloader: télécharger les médias du net !

C'était trop beau... cela n'a pas duré.

[DEBUG   ]  PluzzDL.py          Lien MMS : None
[DEBUG   ]  PluzzDL.py          Lien RTMP : None

Donc, comment passer par un proxy S.V.P.


ıɔǝɔ ǝɯɯoɔ xnǝıɯ ʇsǝ,ɔ nʇunqnʞ

Hors ligne

#2695 Le 16/02/2013, à 22:28

mulder29

Re : TVDownloader: télécharger les médias du net !

Ok, j'ai installé idle, j'ai lancé une python shell et j'ai ouvert mon dossier leafpad d8.py en prenant soin de copier/coller le texte

J'ai ensuite copié dans le terminal le lien
python d8.py http://www.d8.tv/d8-series/pid5313-d8-h.html

et... il n'a l'air de rien se passer en fait.

Hors ligne

#2696 Le 16/02/2013, à 23:11

k3c

Re : TVDownloader: télécharger les médias du net !

@ angeline

$ pluzzdl --help
usage: pluzzdl [options] urlEmission

Télécharge les émissions de Pluzz

positional arguments:
  urlEmission           URL de l'émission Pluzz a charger

optional arguments:
  -h, --help            show this help message and exit
  -b, --progressbar     affiche la progression du téléchargement
  -p PROXY, --proxy PROXY
                        utilise un proxy HTTP au format suivant
                        http://URL:PORT
  -s, --sock            si un proxy est fourni avec l'option -p, un proxy
                        SOCKS5 est utilisé au format suivant ADRESSE:PORT
  -v, --verbose         affiche les informations de debugage
  -t, --soustitres      récupère le fichier de sous-titres de la vidéo (si
                        disponible)
  --nocolor             désactive la couleur dans le terminal
  --version             show program's version number and exit

donc pluzzdl -p http://1.2.3.4:80 ...

en supposant que 1.2.3.4:80 est un proxy français valide

@ mulder 29

quand je lance ta commande, ça m'affiche

python d8.py http://www.d8.tv/d8-series/pid5313-d8-h.html
rtmpdump -r "rtmp://vod-fms.canalplus.fr/ondemand/videos/1302/1047160_20_1500k.mp4" -o "H.mp4"

en fait cette procédure lance juste la commande ci-dessus


Archlinux sur Xiaomi Air 13

Hors ligne

#2697 Le 16/02/2013, à 23:51

angeline

Re : TVDownloader: télécharger les médias du net !

@K3c

Merci pour la réponse.
Cependant, je doute !
J'ai essayé 6/7 proxy... pas un ne veut coopérer.
Par un navigateur: Firefox, Opéra, ou Chromium, l'émission passe. Sans proxy.
Par pluzzdll, toujours la même interdiction

cb@cb-desktop:~$ pluzzdl -v http://pluzz.francetv.fr/videos/jt20h.html
[DEBUG   ]  main.py             pluzzdl 0.9.4 avec Python 2.7.3 (i686)
[DEBUG   ]  main.py             OS : Linux #58-Ubuntu SMP Thu Jan 24 15:51:02 UTC 2013
[DEBUG   ]  Navigateur.py       GET http://pluzz.francetv.fr/videos/jt20h.html
[DEBUG   ]  PluzzDL.py          ID de l'émission : 77496935
[DEBUG   ]  Navigateur.py       GET http://www.pluzz.fr/appftv/webservices/video/getInfosOeuvre.php?mode=zeri&id-diffusion=77496935
[DEBUG   ]  PluzzDL.py          Lien MMS : mms://a988.v101995.c10199.e.vm.akamaistream.net/7/988/10199/3f97c7e6/ftvigrp.download.akamai.com/10199/cappuccino/production/publication/Autre/Autre/2013/S07/J6/740386_jt20h_20130216.wmv
[DEBUG   ]  PluzzDL.py          Lien RTMP : None
[DEBUG   ]  PluzzDL.py          URL manifest : http://ftvodhdsecz-f.akamaihd.net/z/streaming-adaptatif/2013/S07/J6/77496935-20130216-,398,632,934,k.mp4.csmil/manifest.f4m
[DEBUG   ]  PluzzDL.py          URL m3u8 : http://medias2.francetv.fr/catchup-mobile/france-dom-tom/non-token/non-drm/m3u8/2013/S07/J6/77496935-20130216.m3u8
[DEBUG   ]  PluzzDL.py          Utilisation de DRM : non
[DEBUG   ]  PluzzDL.py          Chaine : France 2
[DEBUG   ]  Historique.py       Historique chargé
[DEBUG   ]  Navigateur.py       GET http://medias2.francetv.fr/catchup-mobile/france-dom-tom/non-token/non-drm/m3u8/2013/S07/J6/77496935-20130216.m3u8
[DEBUG   ]  Navigateur.py       Forbidden
Traceback (most recent call last):
  File "/usr/share/pluzzdl/main.py", line 91, in <module>
    progressFnct = progressFnct )
  File "/usr/share/pluzzdl/PluzzDL.py", line 119, in __init__
    downloader.telecharger()
  File "/usr/share/pluzzdl/PluzzDL.py", line 259, in telecharger
    self.m3u8 = self.navigateur.getFichier( self.m3u8URL )
  File "/usr/share/pluzzdl/Navigateur.py", line 58, in getFichier
    page = self.urlOpener.open( requete, timeout = self.timeOut )
  File "/usr/lib/python2.7/urllib2.py", line 406, in open
    response = meth(req, response)
  File "/usr/lib/python2.7/urllib2.py", line 519, in http_response
    'http', request, response, code, msg, hdrs)
  File "/usr/lib/python2.7/urllib2.py", line 444, in error
    return self._call_chain(*args)
  File "/usr/lib/python2.7/urllib2.py", line 378, in _call_chain
    result = func(*args)
  File "/usr/lib/python2.7/urllib2.py", line 527, in http_error_default
    raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
urllib2.HTTPError: HTTP Error 403: Forbidden
[DEBUG   ]  Historique.py       Historique sauvé

Par chance, France télévision s'est réveillé, et maintenant une URL en mms apparait.
Il est 18h ici, je télécharge.

Avec proxy j'obtiens:

 pluzzdl -v -p http://176.31.247.227:8085 http://pluzz.francetv.fr/videos/jt20h.html
[DEBUG   ]  main.py             pluzzdl 0.9.4 avec Python 2.7.3 (i686)
[DEBUG   ]  main.py             OS : Linux #58-Ubuntu SMP Thu Jan 24 15:51:02 UTC 2013
[DEBUG   ]  Navigateur.py       GET http://pluzz.francetv.fr/videos/jt20h.html
[CRITICAL]  PluzzDL.py          Impossible de récupérer l'ID de l'émission

Mais je pense que peu de proxy laissent passer les infos de vidéo, du moins dans les gratuits.

Je reste à l'écoute.

Dernière modification par angeline (Le 16/02/2013, à 23:53)


ıɔǝɔ ǝɯɯoɔ xnǝıɯ ʇsǝ,ɔ nʇunqnʞ

Hors ligne

#2698 Le 17/02/2013, à 01:17

mulder29

Re : TVDownloader: télécharger les médias du net !

k3c a écrit :

@ mulder 29

quand je lance ta commande, ça m'affiche

python d8.py http://www.d8.tv/d8-series/pid5313-d8-h.html
rtmpdump -r "rtmp://vod-fms.canalplus.fr/ondemand/videos/1302/1047160_20_1500k.mp4" -o "H.mp4"

en fait cette procédure lance juste la commande ci-dessus

Euh, moi, ça reste sur la ligne sur python...

et aucune autre réaction o_O

Ok, donc il y a vraiment un bug dans mon système et python est inutilisable chez moi.

Hors ligne

#2699 Le 17/02/2013, à 01:20

k3c

Re : TVDownloader: télécharger les médias du net !

si tu tapes dans un terminal

python

ça t'affiche  quoi ?


Archlinux sur Xiaomi Air 13

Hors ligne

#2700 Le 17/02/2013, à 09:59

mulder29

Re : TVDownloader: télécharger les médias du net !

Ça m'affiche :
Python 2.7.3 (default, Aug  1 2012, 05:16:07)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>

par rapport à la commande fait précédemment, tu en déduis ?

Hors ligne