aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRemita Amine <remitamine@gmail.com>2019-04-28 17:37:46 +0100
committerRemita Amine <remitamine@gmail.com>2019-04-28 17:38:20 +0100
commit92bc97d398cb66e4968070f9d73f02a367193c2b (patch)
tree37fc20df814fcc31f5f3e64e2cc702f190c8fa87
parentf916abc0ac4d1dc7f3a243d791d0f57fd3848a3c (diff)
downloadyoutube-dl-92bc97d398cb66e4968070f9d73f02a367193c2b.tar.xz
[youtube] extract album from Music in this video section(#20301)
-rw-r--r--youtube_dl/extractor/youtube.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/youtube_dl/extractor/youtube.py b/youtube_dl/extractor/youtube.py
index 55eafb866..5e0a9e10c 100644
--- a/youtube_dl/extractor/youtube.py
+++ b/youtube_dl/extractor/youtube.py
@@ -908,6 +908,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'creator': 'Todd Haberman, Daniel Law Heath and Aaron Kaplan',
'track': 'Dark Walk - Position Music',
'artist': 'Todd Haberman, Daniel Law Heath and Aaron Kaplan',
+ 'album': 'Position Music - Production Music Vol. 143 - Dark Walk',
},
'params': {
'skip_download': True,
@@ -2161,9 +2162,10 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
track = extract_meta('Song')
artist = extract_meta('Artist')
+ album = extract_meta('Album')
# Youtube Music Auto-generated description
- album = release_date = release_year = None
+ release_date = release_year = None
if video_description:
mobj = re.search(r'(?s)Provided to YouTube by [^\n]+\n+(?P<track>[^·]+)·(?P<artist>[^\n]+)\n+(?P<album>[^\n]+)(?:.+?℗\s*(?P<release_year>\d{4})(?!\d))?(?:.+?Released on\s*:\s*(?P<release_date>\d{4}-\d{2}-\d{2}))?(.+?\nArtist\s*:\s*(?P<clean_artist>[^\n]+))?', video_description)
if mobj:
@@ -2171,7 +2173,8 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
track = mobj.group('track').strip()
if not artist:
artist = mobj.group('clean_artist') or ', '.join(a.strip() for a in mobj.group('artist').split('·'))
- album = mobj.group('album'.strip())
+ if not album:
+ album = mobj.group('album'.strip())
release_year = mobj.group('release_year')
release_date = mobj.group('release_date')
if release_date: