aboutsummaryrefslogtreecommitdiff
path: root/youtube_dl/extractor/franceinter.py
blob: 47e06f5a1ada8a976a7988b438e0fd06115cc799 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
import re

from .common import InfoExtractor
class FranceInterIE(InfoExtractor):
    
    _VALID_URL=r'http://www.franceinter.fr/player/reecouter\?play=(?P<id>[0-9]{6})'
    IE_NAME='FranceInter'
    _TEST={
           u'url':u'http://www.franceinter.fr/player/reecouter?play=793962',
           u'file':u'793962.mp3'
           
           
           }
           
    #Easier to use python string matching than regex for a simple match
    def get_download_url(self,webpage):
        
        start=webpage.index('&urlAOD=')+8
        end=webpage.index('&startTime')
        return u'http://www.franceinter.fr/%s'%webpage[start:end]
        
    def get_title(self,webpage):
        start=webpage.index('<span class="title diffusion">')+30
        end=webpage.index('</span> dans')
        
        return webpage[start:end]
    def _real_extract(self,url):

        mobj = re.match(self._VALID_URL, url)
        video_id = mobj.group('id')
        
        webpage=self._download_webpage(url,video_id)
        
        title=self.get_title(webpage)
        
        video_url=self.get_download_url(webpage)
        
        return{'id': video_id,u'url': video_url,u'title': title}