diff --git a/youtube_dl/extractor/extractors.py b/youtube_dl/extractor/extractors.py index 33913715a..c1e4aa308 100644 --- a/youtube_dl/extractor/extractors.py +++ b/youtube_dl/extractor/extractors.py @@ -674,7 +674,7 @@ from .myvi import ( from .myvidster import MyVidsterIE from .narando import ( NarandoIE, - NarandoPlayerIE, + NarandoArticleIE, ) from .nationalgeographic import ( NationalGeographicVideoIE, diff --git a/youtube_dl/extractor/narando.py b/youtube_dl/extractor/narando.py index 0a81fa851..8f8fa0cdd 100644 --- a/youtube_dl/extractor/narando.py +++ b/youtube_dl/extractor/narando.py @@ -4,9 +4,9 @@ from __future__ import unicode_literals from .common import InfoExtractor -class NarandoPlayerIE(InfoExtractor): - IE_NAME = "narando:player" - _VALID_URL = r'https://narando\.com/widget\?r=(?P\w+)' +class NarandoIE(InfoExtractor): + IE_NAME = 'narando' + _VALID_URL = r'https?://narando\.com/widget\?.*?r=(?P\w+)&?' _TEST = { 'url': 'https://narando.com/widget?r=b2t4t789kxgy9g7ms4rwjvvw', 'md5': 'd20f671f0395bab8f8285d1f6e8f965e', @@ -21,7 +21,7 @@ class NarandoPlayerIE(InfoExtractor): video_id = self._match_id(url) webpage = self._download_webpage(url, video_id) title = self._html_search_regex(r'(.+?)', webpage, 'title') - download_url = self._html_search_regex(r'.
\s*([^?]*)', webpage, 'download_url') + download_url = self._html_search_regex(r'
(.+)
', webpage, 'download_url') return { 'id': video_id, 'title': title, @@ -30,29 +30,40 @@ class NarandoPlayerIE(InfoExtractor): } -class NarandoIE(InfoExtractor): - IE_NAME = "narando" - _VALID_URL = r'https?://(?:www\.)?narando\.com/articles/(?P.+)' - _TEST = { - 'url': 'https://narando.com/articles/an-ihrem-selbstlob-erkennt-man-sie', - 'md5': 'd20f671f0395bab8f8285d1f6e8f965e', - 'info_dict': { - 'id': 'b2t4t789kxgy9g7ms4rwjvvw', - 'ext': 'mp3', - 'title': 'An ihrem Selbstlob erkennt man sie', +class NarandoArticleIE(InfoExtractor): + IE_NAME = "narando:article" + _VALID_URL = r'https?://(?:www\.)?narando\.com/(articles|r)/(?P.+)' + _TESTS = [ + { + 'url': 'https://narando.com/articles/an-ihrem-selbstlob-erkennt-man-sie', + 'md5': 'd20f671f0395bab8f8285d1f6e8f965e', + 'info_dict': { + 'id': 'b2t4t789kxgy9g7ms4rwjvvw', + 'ext': 'mp3', + 'title': 'An ihrem Selbstlob erkennt man sie', + } + }, + { + 'url': 'https://narando.com/r/b2t4t789kxgy9g7ms4rwjvvw', #alternate URL format + 'md5': 'd20f671f0395bab8f8285d1f6e8f965e', + 'info_dict': { + 'id': 'b2t4t789kxgy9g7ms4rwjvvw', + 'ext': 'mp3', + 'title': 'An ihrem Selbstlob erkennt man sie', + } } - } + ] def _real_extract(self, url): video_id = self._match_id(url) webpage = self._download_webpage(url, video_id) title = self._html_search_regex(r'

(.+?)

', webpage, 'title') - player_id = self._html_search_regex(r'\s*https://narando.com/r/([^"]*)', webpage, 'player_id') - player_url = 'https://narando.com/widget?r=' + player_id + player_id = self._html_search_regex(r'https://narando.com/r/(.+?)\"', webpage, 'player_id') + url_result = 'https://narando.com/widget?r=' + player_id return { 'id': player_id, 'title': title, - 'url': player_url, + 'url': url_result, '_type': 'url', }