franceinter.py 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. import re
  2. from .common import InfoExtractor
  3. class FranceInterIE(InfoExtractor):
  4. _VALID_URL=r'http://www.franceinter.fr/player/reecouter\?play=(?P<id>[0-9]{6})'
  5. IE_NAME='FranceInter'
  6. _TEST={
  7. u'url':u'http://www.franceinter.fr/player/reecouter?play=793962',
  8. u'file':u'793962.mp3'
  9. }
  10. #Easier to use python string matching than regex for a simple match
  11. def get_download_url(self,webpage):
  12. start=webpage.index('&urlAOD=')+8
  13. end=webpage.index('&startTime')
  14. return u'http://www.franceinter.fr/%s'%webpage[start:end]
  15. def get_title(self,webpage):
  16. start=webpage.index('<span class="title diffusion">')+30
  17. end=webpage.index('</span> dans')
  18. return webpage[start:end]
  19. def _real_extract(self,url):
  20. mobj = re.match(self._VALID_URL, url)
  21. video_id = mobj.group('id')
  22. webpage=self._download_webpage(url,video_id)
  23. title=self.get_title(webpage)
  24. video_url=self.get_download_url(webpage)
  25. return{'id': video_id,u'url': video_url,u'title': title}