diff --git a/youtube_dl/extractor/deezer.py b/youtube_dl/extractor/deezer.py index a38b2683d5..458b89b75c 100644 --- a/youtube_dl/extractor/deezer.py +++ b/youtube_dl/extractor/deezer.py @@ -18,11 +18,10 @@ class DeezerPlaylistIE(InfoExtractor): 'info_dict': { 'id': '176747451', 'title': 'Best!', - 'uploader': 'Anonymous', - 'thumbnail': r're:^https?://cdn-images\.deezer\.com/images/cover/.*\.jpg$', + 'uploader': 'anonymous', + 'thumbnail': r're:^https?://e-cdns-images\.dzcdn\.net/images/cover/.*\.jpg$', }, - 'playlist_count': 30, - 'skip': 'Only available in .de', + 'playlist_count': 29, } def _real_extract(self, url): @@ -46,25 +45,17 @@ class DeezerPlaylistIE(InfoExtractor): webpage, 'data JSON') data = json.loads(data_json) - playlist_title = data.get('DATA', {}).get('TITLE') - playlist_uploader = data.get('DATA', {}).get('PARENT_USERNAME') + playlist_title = data['DATA']['TITLE'] + playlist_uploader = data['DATA']['PARENT_USERNAME'] playlist_thumbnail = self._search_regex( r'<img id="naboo_playlist_image".*?src="([^"]+)"', webpage, 'playlist thumbnail') - preview_pattern = self._search_regex( - r"var SOUND_PREVIEW_GATEWAY\s*=\s*'([^']+)';", webpage, - 'preview URL pattern', fatal=False) entries = [] for s in data['SONGS']['data']: - puid = s['MD5_ORIGIN'] - preview_video_url = preview_pattern.\ - replace('{0}', puid[0]).\ - replace('{1}', puid).\ - replace('{2}', s['MEDIA_VERSION']) formats = [{ 'format_id': 'preview', - 'url': preview_video_url, + 'url': s['MEDIA'][0]['HREF'], 'preference': -100, # Only the first 30 seconds 'ext': 'mp3', }]