diff options
Diffstat (limited to 'searx/webapp.py')
| -rw-r--r-- | searx/webapp.py | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/searx/webapp.py b/searx/webapp.py index 6ee9af745..8ed4cc7c1 100644 --- a/searx/webapp.py +++ b/searx/webapp.py @@ -46,9 +46,12 @@ from searx.languages import language_codes from searx.https_rewrite import https_url_rewrite from searx.search import Search from searx.query import Query -from searx.autocomplete import backends as autocomplete_backends +from searx.autocomplete import searx_bang, backends as autocomplete_backends +from searx import logger +logger = logger.getChild('webapp') + static_path, templates_path, themes =\ get_themes(settings['themes_path'] if settings.get('themes_path') @@ -340,17 +343,22 @@ def autocompleter(): # check if search query is set if not query.getSearchQuery(): - return + return '', 400 # run autocompleter completer = autocomplete_backends.get(request.cookies.get('autocomplete')) # check if valid autocompleter is selected if not completer: - return + return '', 400 + + # parse searx specific autocompleter results like !bang + raw_results = searx_bang(query) - # run autocompletion - raw_results = completer(query.getSearchQuery()) + # normal autocompletion results only appear if max 3. searx results returned + if len(raw_results) <= 3: + # run autocompletion + raw_results.extend(completer(query.getSearchQuery())) # parse results (write :language and !engine back to result string) results = [] |