1500 Clips Des Années 80


mrx2003
 Share

Messages recommandés

Alors... Cela ne s'annonce pas trop mal...

Juste le pb des REGEX et comment utiliser la fonction re.search.

Je cherche la bonne syntax pour separer le titre de l'url de cette chaine :

<li><a target="quotes"

href="mortgage.php?vid=NNZJCMA-gq8"

>Pepsi & Shirley - Heartache</a></li>

Une ame charitable pour me donner des infos sur re.py en generale et le search en particulier...

Merci

Lien vers le commentaire
Partager sur d'autres sites

Tu peux jeter un oeil à mes scripts.

J'utilise fréquemment les regex lorsqu'il s'agit de parser les infos d'un site web.

Par contre j'utilise la fonction findall qui renvoi une liste de tout ce qui correspond à la regex :

exp = re.compile("""<li><a target="quotes" href="mortgage.php\?vid=(.*?)">(.*?)</a></li>""")ListeDeVideos = exp.findall(html)

Ce qui devrait retourner une liste de tuple du genre :

[ ("NNZJCMA-gq8","Pepsi & Shirley - Heartache") , ( ... ) ,... ]

Lien vers le commentaire
Partager sur d'autres sites

Merci pour les reponses.

Confirmez vs que le flash n'est pas lu par xbmc ? de ce que j'ai lu on a le son (deja pas si mal)

ds ce cas ceci n'aura été qu'un feu de paille, je me serais au moins amusé a decouvrir le python !!!!

Je vais quand meme poursuivre au moins pour le son et pour la beauté du geste...

Modifié par fpatou
Lien vers le commentaire
Partager sur d'autres sites

Tu peux jeter un oeil à mes scripts.

J'utilise fréquemment les regex lorsqu'il s'agit de parser les infos d'un site web.

Par contre j'utilise la fonction findall qui renvoi une liste de tout ce qui correspond à la regex :

exp = re.compile("""<li><a target="quotes" href="mortgage.php\?vid=(.*?)">(.*?)</a></li>""")ListeDeVideos = exp.findall(html)

Ce qui devrait retourner une liste de tuple du genre :

[ ("NNZJCMA-gq8","Pepsi & Shirley - Heartache") , ( ... ) ,... ]

Alors....

J'arrive bien a remplir un "control list" avec les url car elles tiennent sur une ligne no pb pour les extraire avec :

def get_url(self):

re.purge()

URL = ""

exp = re.compile('(vid=(.*)")')

URL_ID = exp.findall(self.data)

return URL_ID

en Revanche je peux avoir ce genre d'entrée ds la liste:

<li><a target="quotes"

href="mortgage.php?vid=m1i9lAQloMY"

>Alex y Cristina - Hago Chas y Aparezco

a tu Lado</a></li>

ce qui fait que le regex :

'>(.*)</a></li>' Plantoit car il y a une fin de ligne ...avant les balises de fin...et par consequent je me retrouve avec deux tuples qui ne sont pas synchrone (car je n'ai jamais reussi a faire marcher ton regex de facon a voir un seul tuple avec des couples)

Une idée sur ce point ?

Merci de ton aide

Lien vers le commentaire
Partager sur d'autres sites

bravo fpatou de te lancer cela serais vraiment cool !!

http://gueux-forum.net/index.php?showtopic=65018&hl=swf

une breve recherche pour dire que en effet pour lire du flash il faut passer avec une autre appli que xbmc

Est ce techniquement impossible d'avoir des codec swf ?

Modifié par mrx2003
Lien vers le commentaire
Partager sur d'autres sites

Alors....

J'arrive bien a remplir un "control list" avec les url car elles tiennent sur une ligne no pb pour les extraire avec :

	def get_url(self):		re.purge()		URL = ""		exp = re.compile('(vid=(.*)")')		URL_ID = exp.findall(self.data)		return URL_ID

en Revanche je peux avoir ce genre d'entrée ds la liste:

<li><a target="quotes" href="mortgage.php?vid=m1i9lAQloMY" >Alex y Cristina - Hago Chas y Aparezcoa tu Lado</a></li>

ce qui fait que le regex :

'>(.*)</a></li>' Plantoit car il y a une fin de ligne ...avant les balises de fin...et par consequent je me retrouve avec deux tuples qui ne sont pas synchrone (car je n'ai jamais reussi a faire marcher ton regex de facon a voir un seul tuple avec des couples)

Une idée sur ce point ?

Essaye de mettre là ou tu as

exp = re.compile('(vid=(.*)")')

tu mets :

exp = re.compile('(vid=(.*)")',re.DOTALL | re.MULTILINE )

Lien vers le commentaire
Partager sur d'autres sites

Essaye de mettre là ou tu as

exp = re.compile('(vid=(.*)")')

tu mets :

exp = re.compile('(vid=(.*)")',re.DOTALL | re.MULTILINE )

Lorsque je met : exp = re.compile('>(.*)</a></li>',re.DOTALL | re.MULTILINE ) pour prendre les labels des chansons je n'ai plus rien ds mon tuple :-(

Donc je fais tourner deux fois cette fonction avec deux regex codes :

def get_tuple_from_regex(self,regex):

re.purge

Tuple=""

exp = re.compile(regex )

Tuple = exp.findall(self.data)

return Tuple

LABEL : len = 1358 avec regex : '>(.*)</a></li>'

URL : len = 1463 avec regex : '(vid=(.*)")'

donc je n'arrive pas a les rendre synchrone...

Comment combiner les deux regex des facon a voir au moins des infos coherentes ?

Il faudrait surement d'abord traiter la chaine html afinde lui faire disparaitre certain retour chariot...

Modifié par alexsolex
Lien vers le commentaire
Partager sur d'autres sites

  • 2 months later...

Salut à tous,

Ce post m'a bien interessé. Sachez que les vidéos sont hébergé par youtube.com. Le site où se trouve les clips des 80s ne fait que faire un copier collé du player.

Bref, ya quelques temps, j'utilisais une extension firefox pour télécharger les vidéos. Flash peut en effet lire des .avi et c'est ce que fait youtube. Malheureusement, ils ont vu la combine et les videos ne sont plus téléchargeable car c'est maintenant une clé qui est filée au player flash.

Tout ca pour dire au final, que je vais faire une tite contribution à l'affaire. Je vais essayer de décompiler le player et voir qu'il fait de la clé. Etant donné que les fichiers sur youtube sont des avi, y a forcément moyen d'y acceder. Voili, voilou.

Stay tuned

Vilmi

Lien vers le commentaire
Partager sur d'autres sites

Après ma petite dissection du player, voilà ce que je trouve.

Si dans youtube l'appelle du swf est :

<embed src="http://www.youtube.com/player2.swf?video_id=lXBmgmytFVU&l=214&t=OEgsToPDskJpgcOiBElL6boNH641DUDi" ...

Alors pour choper la vidéo au format flv il faut appeler la page :

www.youtube.com/get_video?video_id=lXBmgmytFVU&t=OEgsToPDskJpgcOiBElL6boNH641DUDi

Je sais pas si XBMC lit les flv mais bon. Voilà ce que j'ai pu trouver.

Le truc serai de parser le html, récupérer la balise embed, récupérer la variable video_id et la variable t et hop hop, le tour est joué, nan ?

Modifié par neOtoGi
Lien vers le commentaire
Partager sur d'autres sites

Après ma petite dissection du player, voilà ce que je trouve.

Si dans youtube l'appelle du swf est :

<embed src="http://www.youtube.com/player2.swf?video_id=lXBmgmytFVU&l=214&t=OEgsToPDskJpgcOiBElL6boNH641DUDi" ...

Alors pour choper la vidéo au format flv il faut appeler la page :

www.youtube.com/get_video?video_id=lXBmgmytFVU&t=OEgsToPDskJpgcOiBElL6boNH641DUDi

Je sais pas si XBMC lit les flv mais bon. Voilà ce que j'ai pu trouver.

Le truc serai de parser le html, récupérer la balise embed, récupérer la variable video_id et la variable t et hop hop, le tour est joué, nan ?

XBMC lit très bien les flv.

Un script pour youtube existe déjà et pourrait servir de bonne base.

Lien vers le commentaire
Partager sur d'autres sites

  • 3 months later...

Ah!Ah que vois je!!?? un moyen de finir le bidule !!

Bon il faut m'en dire un peu plus car je n'ai pas tout compris, moi je recupere un id video du style :

http://1500videos.com/movie.php?vid=ANTN8BdFozs

Comment attraper les variables l et t pour la redirection sur youtube ?

Merci de l'info en tout cas

Modifié par fpatou
Lien vers le commentaire
Partager sur d'autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
 Share