diff --git a/searx/autocomplete.py b/searx/autocomplete.py index 8a67f8139..ff299d184 100644 --- a/searx/autocomplete.py +++ b/searx/autocomplete.py @@ -85,6 +85,22 @@ def google(query, lang): return results +def seznam(query, _lang): + # seznam search autocompleter + url = 'https://suggest.seznam.cz/fulltext/cs?{query}' + + resp = get(url.format(query=urlencode( + {'phrase': query, 'cursorPosition': len(query), 'format': 'json-2', 'highlight': '1', 'count': '6'} + ))) + + if not resp.ok: + return [] + + data = resp.json() + return [''.join( + [part.get('text', '') for part in item.get('text', [])] + ) for item in data.get('result', []) if item.get('itemType', None) == 'ItemType.TEXT'] + def startpage(query, lang): # startpage autocompleter lui = ENGINES_LANGUAGES['startpage'].get(lang, 'english') @@ -133,6 +149,7 @@ backends = { 'dbpedia': dbpedia, 'duckduckgo': duckduckgo, 'google': google, + 'seznam': seznam, 'startpage': startpage, 'swisscows': swisscows, 'qwant': qwant, diff --git a/searx/settings.yml b/searx/settings.yml index eee0e1d7d..d6a465faf 100644 --- a/searx/settings.yml +++ b/searx/settings.yml @@ -15,7 +15,7 @@ search: # Filter results. 0: None, 1: Moderate, 2: Strict safe_search: 0 # Existing autocomplete backends: "dbpedia", "duckduckgo", "google", - # "startpage", "swisscows", "qwant", "wikipedia" - leave blank to turn it off + # "seznam", "startpage", "swisscows", "qwant", "wikipedia" - leave blank to turn it off # by default. autocomplete: "" # Default search language - leave blank to detect from browser information or