|
|
|
@ -10,8 +10,8 @@ from ..utils import (
|
|
|
|
|
orderedSet,
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
class DeezerBaseInfoExtractor(InfoExtractor):
|
|
|
|
|
|
|
|
|
|
class DeezerBaseInfoExtractor(InfoExtractor):
|
|
|
|
|
def get_data(self, url):
|
|
|
|
|
if not self._downloader.params.get('test'):
|
|
|
|
|
self._downloader.report_warning('For now, this extractor only supports the 30 second previews. Patches welcome!')
|
|
|
|
@ -34,6 +34,7 @@ class DeezerBaseInfoExtractor(InfoExtractor):
|
|
|
|
|
data = json.loads(data_json)
|
|
|
|
|
return id, webpage, data
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class DeezerPlaylistIE(DeezerBaseInfoExtractor):
|
|
|
|
|
_VALID_URL = r'https?://(?:www\.)?deezer\.com/(../)?playlist/(?P<id>[0-9]+)'
|
|
|
|
|
_TEST = {
|
|
|
|
@ -86,6 +87,7 @@ class DeezerPlaylistIE(DeezerBaseInfoExtractor):
|
|
|
|
|
'entries': entries,
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class DeezerAlbumIE(DeezerBaseInfoExtractor):
|
|
|
|
|
_VALID_URL = r'https?://(?:www\.)?deezer\.com/(../)?album/(?P<id>[0-9]+)'
|
|
|
|
|
_TEST = {
|
|
|
|
@ -133,7 +135,6 @@ class DeezerAlbumIE(DeezerBaseInfoExtractor):
|
|
|
|
|
'artist': album_uploader,
|
|
|
|
|
'album': album_title,
|
|
|
|
|
'album_artist': album_uploader,
|
|
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
return {
|
|
|
|
|