aboutsummaryrefslogtreecommitdiffstats
path: root/youtube/__init__.py
diff options
context:
space:
mode:
Diffstat (limited to 'youtube/__init__.py')
-rw-r--r--youtube/__init__.py15
1 files changed, 14 insertions, 1 deletions
diff --git a/youtube/__init__.py b/youtube/__init__.py
index d52ea98..a8a725d 100644
--- a/youtube/__init__.py
+++ b/youtube/__init__.py
@@ -137,9 +137,22 @@ def error_page(e):
error_message += '\n\nExit node IP address: ' + exc_info()[1].ip
return flask.render_template('error.html', error_message=error_message, slim=slim), 502
elif exc_info()[0] == util.FetchError and exc_info()[1].error_message:
+ # Handle specific error codes with user-friendly messages
+ error_code = exc_info()[1].code
+ error_msg = exc_info()[1].error_message
+
+ if error_code == '400':
+ error_message = (f'Error: Bad Request (400)\n\n{error_msg}\n\n'
+ 'This usually means the URL or parameters are invalid. '
+ 'Try going back and trying a different option.')
+ elif error_code == '404':
+ error_message = 'Error: The page you are looking for isn\'t here.'
+ else:
+ error_message = f'Error: {error_code} - {error_msg}'
+
return (flask.render_template(
'error.html',
- error_message=exc_info()[1].error_message,
+ error_message=error_message,
slim=slim
), 502)
elif (exc_info()[0] == util.FetchError