From 3d2e410ec10c3f79f27880c1ebd8809ad4f7cc05 Mon Sep 17 00:00:00 2001 From: flatgreen Date: Mon, 28 Dec 2015 17:41:41 +0100 Subject: [PATCH] [franceculture] improve 2 beautiful --- youtube_dl/extractor/__init__.py | 2 +- youtube_dl/extractor/franceculture.py | 16 +++++----------- 2 files changed, 6 insertions(+), 12 deletions(-) diff --git a/youtube_dl/extractor/__init__.py b/youtube_dl/extractor/__init__.py index 7c4a19a11..ef63360e6 100644 --- a/youtube_dl/extractor/__init__.py +++ b/youtube_dl/extractor/__init__.py @@ -200,7 +200,7 @@ from .foxnews import FoxNewsIE from .foxsports import FoxSportsIE from .franceculture import ( FranceCultureIE, - FranceCultureUrlIE, + FranceCultureEmissionIE, ) from .franceinter import FranceInterIE from .francetv import ( diff --git a/youtube_dl/extractor/franceculture.py b/youtube_dl/extractor/franceculture.py index 77ef4b8b7..995aa37c6 100644 --- a/youtube_dl/extractor/franceculture.py +++ b/youtube_dl/extractor/franceculture.py @@ -1,8 +1,6 @@ # coding: utf-8 from __future__ import unicode_literals -import re - from .common import InfoExtractor from ..compat import ( compat_urlparse, @@ -10,6 +8,7 @@ from ..compat import ( from ..utils import ( determine_ext, int_or_none, + ExtractorError, ) @@ -79,7 +78,7 @@ class FranceCultureIE(InfoExtractor): return self._extract_infos_from_player(url, video_id) -class FranceCultureUrlIE(FranceCultureIE): +class FranceCultureEmissionIE(FranceCultureIE): _VALID_URL = r'https?://(?:www\.)?franceculture\.fr/emission-(?P[^?#]+)' _TEST = { 'url': 'http://www.franceculture.fr/emission-les-carnets-de-la-creation-jean-gabriel-periot-cineaste-2015-10-13', @@ -95,19 +94,14 @@ class FranceCultureUrlIE(FranceCultureIE): } } - # dl url - # find : - # extract '/player/reecouter?play=5093239' join to url base of franceculture - # extract mp3 with FranceCultureIE _extract_infos_from_player - def _real_extract(self, url): video_id = self._match_id(url) webpage = self._download_webpage(url, video_id) video_path = self._html_search_regex( - r'[0-9]+)', video_path).group('id') + new_id = self._search_regex('play=(?P[0-9]+)', video_path, 'new_id', group='id') video_url = compat_urlparse.urljoin(url, video_path) return self._extract_infos_from_player(video_url, new_id)