Advertisement
mmu_man

pluzzdl m3u8 fix

May 31st, 2013
369
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Diff 2.23 KB | None | 0 0
  1. diff -r e599d8d0fa82 other/Pluzz/src/PluzzDL.py
  2. --- a/other/Pluzz/src/PluzzDL.py    Sun Nov 25 17:56:46 2012 +0100
  3. +++ b/other/Pluzz/src/PluzzDL.py    Fri May 31 20:59:51 2013 +0200
  4. @@ -1,5 +1,5 @@
  5.  #!/usr/bin/env python
  6. -# -*- coding:Utf-8 -*-
  7. +# -*- coding:utf-8 -*-
  8.  
  9.  # Notes :
  10.  #    -> Filtre Wireshark :
  11. @@ -47,7 +47,8 @@
  12.     REGEX_ID = "http://info.francetelevisions.fr/\?id-video=([^\"]+)"
  13.     XML_DESCRIPTION = "http://www.pluzz.fr/appftv/webservices/video/getInfosOeuvre.php?mode=zeri&id-diffusion=_ID_EMISSION_"
  14.     URL_SMI = "http://www.pluzz.fr/appftv/webservices/video/getFichierSmi.php?smi=_CHAINE_/_ID_EMISSION_.smi&source=azad"
  15. -   M3U8_LINK = "http://medias2.francetv.fr/catchup-mobile/france-dom-tom/non-token/non-drm/m3u8/_FILE_NAME_.m3u8"
  16. +   #M3U8_LINK = "http://medias2.francetv.fr/catchup-mobile/france-dom-tom/non-token/non-drm/m3u8/_FILE_NAME_.m3u8"
  17. +   M3U8_LINK = "http://medias2.francetv.fr/catchup-mobile/hls-ios-inf/i/streaming-adaptatif_france-dom-tom/_FILE_NAME_-,398,632,934,k.mp4.csmil/master.m3u8"
  18.     REGEX_M3U8 = "/([0-9]{4}/S[0-9]{2}/J[0-9]{1}/[0-9]*-[0-9]{6,8})-"
  19.  
  20.     def __init__( self,
  21. @@ -267,7 +268,9 @@
  22.         self.urlBase = "/".join( self.m3u8URL.split( "/" )[ :-1 ] )
  23.         # Recupere le lien avec le plus gros bitrate
  24.         try:
  25. -           self.listeFragmentsURL = "%s/%s" % ( self.urlBase, re.findall( ".+?\.m3u8.*", self.m3u8 )[ -1 ] )
  26. +           self.listeFragmentsURL = re.findall( ".+?\.m3u8.*", self.m3u8 )[ -1 ]
  27. +           if "://" not in self.listeFragmentsURL:
  28. +               self.listeFragmentsURL = "%s/%s" % ( self.urlBase, self.listeFragmentsURL )
  29.         except:
  30.             raise PluzzDLException( "Impossible de trouver le lien vers la liste des fragments" )
  31.         # Recupere la liste des fragments
  32. @@ -306,7 +309,10 @@
  33.         try :
  34.             i = self.premierFragment
  35.             while( i <= self.nbFragMax and not self.stopDownloadEvent.isSet() ):
  36. -               frag = self.navigateur.getFichier( "%s/%s" % ( self.urlBase, self.listeFragments[ i - 1 ] ) )
  37. +               fragURL = self.listeFragments[ i - 1 ]
  38. +               if "://" not in fragURL:
  39. +                   fragURL = "%s/%s" % ( self.urlBase, fragURL )
  40. +               frag = self.navigateur.getFichier( fragURL )
  41.                 self.fichierVideo.write( frag )
  42.                 # Affichage de la progression
  43.                 self.progressFnct( min( int( ( i / self.nbFragMax ) * 100 ), 100 ) )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement