@@ -44,7 +44,7 @@ from urllib.parse import urlencode, urlparse, urljoin, urlsplit
45from pygments import highlight
45from pygments import highlight
46from pygments.lexers import get_lexer_by_name
46from pygments.lexers import get_lexer_by_name
47−from pygments.formatters import HtmlFormatter
47+from pygments.formatters import HtmlFormatter # pylint: disable=no-name-in-module
49from werkzeug.middleware.proxy_fix import ProxyFix
49from werkzeug.middleware.proxy_fix import ProxyFix
50from flask import (
50from flask import (
@@ -111,7 +111,7 @@ app = Flask(
112app.jinja_env.trim_blocks = True
112app.jinja_env.trim_blocks = True
113app.jinja_env.lstrip_blocks = True
113app.jinja_env.lstrip_blocks = True
114−app.jinja_env.add_extension('jinja2.ext.loopcontrols')
114+app.jinja_env.add_extension('jinja2.ext.loopcontrols') # pylint: disable=no-member
115app.secret_key = settings['server']['secret_key']
115app.secret_key = settings['server']['secret_key']
117# see https://flask.palletsprojects.com/en/1.1.x/cli/
117# see https://flask.palletsprojects.com/en/1.1.x/cli/
@@ -565,15 +565,12 @@ def index():
566 result_container = search.search()
566 result_container = search.search()
568+ except SearxParameterException as e:
569+ logger.exception('search error: SearxParameterException')
570+ return index_error(output_format, e.message), 400
568 except Exception as e:
571 except Exception as e:
570 logger.exception('search error')
572 logger.exception('search error')
572− # is it an invalid input parameter or something else ?
573− if (issubclass(e.__class__, SearxParameterException)):
574− return index_error(output_format, e.message), 400
576− return index_error(output_format, gettext('search error')), 500
573+ return index_error(output_format, gettext('search error')), 500
578 # results
575 # results
579 results = result_container.get_ordered_results()
576 results = result_container.get_ordered_results()