Do not show bug report for errors that are to be expected (Closes #973)

This commit is contained in:
Philipp Hagemeister 2013-07-02 08:40:21 +02:00
parent 8dba13f7e8
commit 9a82b2389f
2 changed files with 8 additions and 4 deletions

View file

@ -441,7 +441,7 @@ class YoutubeIE(InfoExtractor):
break break
if 'token' not in video_info: if 'token' not in video_info:
if 'reason' in video_info: if 'reason' in video_info:
raise ExtractorError(u'YouTube said: %s' % video_info['reason'][0]) raise ExtractorError(u'YouTube said: %s' % video_info['reason'][0], expected=True)
else: else:
raise ExtractorError(u'"token" parameter not in video info for unknown reason') raise ExtractorError(u'"token" parameter not in video info for unknown reason')

View file

@ -470,10 +470,14 @@ def make_HTTPS_handler(opts):
class ExtractorError(Exception): class ExtractorError(Exception):
"""Error during info extraction.""" """Error during info extraction."""
def __init__(self, msg, tb=None): def __init__(self, msg, tb=None, expected=False):
""" tb, if given, is the original traceback (so that it can be printed out). """ """ tb, if given, is the original traceback (so that it can be printed out).
If expected is set, this is a normal error message and most likely not a bug in youtube-dl.
"""
if not sys.exc_info()[0] in (compat_urllib_error.URLError, socket.timeout, UnavailableVideoError): if sys.exc_info()[0] in (compat_urllib_error.URLError, socket.timeout, UnavailableVideoError):
expected = True
if not expected:
msg = msg + u'; please report this issue on https://yt-dl.org/bug . Be sure to call youtube-dl with the --verbose flag and include its complete output.' msg = msg + u'; please report this issue on https://yt-dl.org/bug . Be sure to call youtube-dl with the --verbose flag and include its complete output.'
super(ExtractorError, self).__init__(msg) super(ExtractorError, self).__init__(msg)