From: Sergey M․ Date: Wed, 20 Apr 2016 16:14:32 +0000 (+0600) Subject: [youtube] Capture and output login error message X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=commitdiff_plain;ds=sidebyside;h=494ab6db7394b39126d775efe03eb6dab428eff9;p=youtube-dl [youtube] Capture and output login error message --- diff --git a/youtube_dl/extractor/youtube.py b/youtube_dl/extractor/youtube.py index a4dd628a1..44f98d294 100644 --- a/youtube_dl/extractor/youtube.py +++ b/youtube_dl/extractor/youtube.py @@ -125,6 +125,12 @@ class YoutubeBaseInfoExtractor(InfoExtractor): if login_results is False: return False + error_msg = self._html_search_regex( + r'<[^>]+id="errormsg_0_Passwd"[^>]*>([^<]+)<', + login_results, 'error message', default=None) + if error_msg: + raise ExtractorError('Unable to login: %s' % error_msg, expected=True) + if re.search(r'id="errormsg_0_Passwd"', login_results) is not None: raise ExtractorError('Please use your account password and a two-factor code instead of an application-specific password.', expected=True)