From 86297d1acf9ad2420cfbbef9c0d45cac748bfecb Mon Sep 17 00:00:00 2001 From: Isaac-the-Man Date: Mon, 11 Jan 2021 20:28:11 -0500 Subject: [PATCH] [khinsider] fixed fatal handling --- youtube_dl/extractor/khinsider.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/youtube_dl/extractor/khinsider.py b/youtube_dl/extractor/khinsider.py index 881ac352a..a70ba5542 100644 --- a/youtube_dl/extractor/khinsider.py +++ b/youtube_dl/extractor/khinsider.py @@ -8,6 +8,7 @@ from .common import InfoExtractor from ..utils import ( get_element_by_id, unified_strdate, + ExtractorError, parse_duration) @@ -35,9 +36,7 @@ class KhinsiderIE(InfoExtractor): 'album', group='album') + '_' + self._search_regex(self._VALID_URL, url, 'track', group='track') webpage = self._download_webpage(url, video_id) - title = self._html_search_regex( - r'Song name: (.+?)', - webpage, 'title') or self._search_regex(self._VALID_URL, url, 'track', group='track') + title = self._html_search_regex(r'Song name: (.+?)', webpage, 'title', default=video_id) return { 'id': video_id, @@ -45,7 +44,7 @@ class KhinsiderIE(InfoExtractor): 'description': self._html_search_meta('description', webpage), 'url': url, 'ext': 'mp3', - 'album': self._html_search_regex(r'Album name: (.+?)', webpage, 'album name'), + 'album': self._html_search_regex(r'Album name: (.+?)', webpage, 'album name', fatal=False), 'track': title } @@ -74,6 +73,9 @@ class KhinsiderAlbumIE(InfoExtractor): r = re.compile(r'.+?)\">(?P.+?)[^\S]+]+?>]+?>(?P[0-9,:]+)') songs_info = [m.groupdict() for m in r.finditer(content)] + if len(songs_info) <= 0: + raise ExtractorError('No tracks found for this album.') + entries = [] for song_info in songs_info: entries.append({ @@ -92,7 +94,7 @@ class KhinsiderAlbumIE(InfoExtractor): video_id = self._match_id(url) webpage = self._download_webpage(url, video_id) - title = self._html_search_regex(r'(.+?)[^\S]+?', webpage, 'title') + title = self._html_search_regex(r'(.+?)[^\S]+?', webpage, 'title', default=video_id) upload_date = self._html_search_regex(r'Date added: (.+?)', webpage, 'upload date', fatal=False) tb = self._html_search_regex( r'',