diff --git a/youtube_dl/extractor/youtube.py b/youtube_dl/extractor/youtube.py
index 908defecd..081b710df 100644
--- a/youtube_dl/extractor/youtube.py
+++ b/youtube_dl/extractor/youtube.py
@@ -2184,12 +2184,18 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
video_alt_title = video_creator = None
def extract_meta(field):
- return self._html_search_regex(
+ return re.search(
r'
]+class="title"[^>]*>\s*%s\s*
\s*]*>\s*- (.+?)
\s*' % field,
- video_webpage, field, default=None)
+ video_webpage).group(1)
- track = extract_meta('Song')
- artist = extract_meta('Artist')
+ def extract_meta_url(list_elem_content:str):
+ if list_elem_content.endswith(''):
+ return re.search(r'(.*)', list_elem_content).groups()
+ else:
+ return None, list_elem_content
+
+ music_relative_url, track = extract_meta_url(extract_meta('Song'))
+ artist_relative_url, artist = extract_meta_url(extract_meta('Artist'))
album = extract_meta('Album')
# Youtube Music Auto-generated description
@@ -2404,6 +2410,8 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'album': album,
'release_date': release_date,
'release_year': release_year,
+ 'artist_relative_url': artist_relative_url,
+ 'music_relative_url': music_relative_url,
}