[mod] autocomplete.py: add support for mwmbl completions

This commit is contained in:
Bnyro 2023-08-23 15:24:42 +02:00 committed by Markus Heiser
parent 19300a5659
commit df71c24b20
4 changed files with 15 additions and 3 deletions

View file

@ -35,6 +35,7 @@
- ``dbpedia``
- ``duckduckgo``
- ``google``
- ``mwmbl``
- ``startpage``
- ``swisscows``
- ``qwant``

View file

@ -68,8 +68,8 @@ Parameters
Proxy image results through SearXNG.
``autocomplete`` : default from :ref:`settings search`
[ ``google``, ``dbpedia``, ``duckduckgo``, ``startpage``, ``wikipedia``,
``swisscows``, ``qwant`` ]
[ ``google``, ``dbpedia``, ``duckduckgo``, ``mwmbl``, ``startpage``,
``wikipedia``, ``swisscows``, ``qwant`` ]
Service which completes words as you type.

View file

@ -110,6 +110,16 @@ def google_complete(query, sxng_locale):
return results
def mwmbl(query, _lang):
# mwmbl autocompleter
url = 'https://api.mwmbl.org/search/complete?{query}'
results = get(url.format(query=urlencode({'q': query}))).json()[1]
# results starting with `go:` are direct urls and not useful for auto completion
return [result for result in results if not result.startswith("go: ") and not result.startswith("search: ")]
def seznam(query, _lang):
# seznam search autocompleter
url = 'https://suggest.seznam.cz/fulltext/cs?{query}'
@ -208,6 +218,7 @@ backends = {
'dbpedia': dbpedia,
'duckduckgo': duckduckgo,
'google': google_complete,
'mwmbl': mwmbl,
'seznam': seznam,
'startpage': startpage,
'swisscows': swisscows,

View file

@ -23,7 +23,7 @@ brand:
search:
# Filter results. 0: None, 1: Moderate, 2: Strict
safe_search: 0
# Existing autocomplete backends: "dbpedia", "duckduckgo", "google", "yandex",
# Existing autocomplete backends: "dbpedia", "duckduckgo", "google", "yandex", "mwmbl",
# "seznam", "startpage", "swisscows", "qwant", "wikipedia" - leave blank to turn it off
# by default.
autocomplete: ""