mirror of
				https://gitlab.com/ytdl-org/youtube-dl.git
				synced 2025-11-03 21:37:07 -05:00 
			
		
		
		
	[francetv] Add an extractor for Generation Quoi (closes #1475)
This commit is contained in:
		@@ -43,6 +43,7 @@ from .francetv import (
 | 
			
		||||
    PluzzIE,
 | 
			
		||||
    FranceTvInfoIE,
 | 
			
		||||
    France2IE,
 | 
			
		||||
    GenerationQuoiIE
 | 
			
		||||
)
 | 
			
		||||
from .freesound import FreesoundIE
 | 
			
		||||
from .funnyordie import FunnyOrDieIE
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,7 @@
 | 
			
		||||
# encoding: utf-8
 | 
			
		||||
import re
 | 
			
		||||
import xml.etree.ElementTree
 | 
			
		||||
import json
 | 
			
		||||
 | 
			
		||||
from .common import InfoExtractor
 | 
			
		||||
from ..utils import (
 | 
			
		||||
@@ -87,3 +88,30 @@ class France2IE(FranceTVBaseInfoExtractor):
 | 
			
		||||
        mobj = re.match(self._VALID_URL, url)
 | 
			
		||||
        video_id = mobj.group('id')
 | 
			
		||||
        return self._extract_video(video_id)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class GenerationQuoiIE(InfoExtractor):
 | 
			
		||||
    IE_NAME = u'http://generation-quoi.france2.fr'
 | 
			
		||||
    _VALID_URL = r'https?://generation-quoi\.france2\.fr/portrait/(?P<name>.*)(\?|$)'
 | 
			
		||||
 | 
			
		||||
    _TEST = {
 | 
			
		||||
        u'url': u'http://generation-quoi.france2.fr/portrait/garde-a-vous',
 | 
			
		||||
        u'file': u'k7FJX8VBcvvLmX4wA5Q.mp4',
 | 
			
		||||
        u'info_dict': {
 | 
			
		||||
            u'title': u'Génération Quoi - Garde à Vous',
 | 
			
		||||
            u'uploader': u'Génération Quoi',
 | 
			
		||||
        },
 | 
			
		||||
        u'params': {
 | 
			
		||||
            # It uses Dailymotion
 | 
			
		||||
            u'skip_download': True,
 | 
			
		||||
        },
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    def _real_extract(self, url):
 | 
			
		||||
        mobj = re.match(self._VALID_URL, url)
 | 
			
		||||
        name = mobj.group('name')
 | 
			
		||||
        info_url = compat_urlparse.urljoin(url, '/medias/video/%s.json' % name)
 | 
			
		||||
        info_json = self._download_webpage(info_url, name)
 | 
			
		||||
        info = json.loads(info_json)
 | 
			
		||||
        return self.url_result('http://www.dailymotion.com/video/%s' % info['id'],
 | 
			
		||||
            ie='Dailymotion')
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user