mirror of
https://github.com/searxng/searxng.git
synced 2026-06-16 06:46:52 +02:00
[feat] autocomplete: add privacywall autocompleter (#6211)
This commit is contained in:
@@ -43,6 +43,7 @@
|
|||||||
- ``google``
|
- ``google``
|
||||||
- ``mwmbl``
|
- ``mwmbl``
|
||||||
- ``naver``
|
- ``naver``
|
||||||
|
- ``privacywall``
|
||||||
- ``quark``
|
- ``quark``
|
||||||
- ``qwant``
|
- ``qwant``
|
||||||
- ``seznam``
|
- ``seznam``
|
||||||
|
|||||||
@@ -87,7 +87,7 @@ Parameters
|
|||||||
|
|
||||||
``autocomplete`` : default from :ref:`settings search`
|
``autocomplete`` : default from :ref:`settings search`
|
||||||
[ ``google``, ``dbpedia``, ``duckduckgo``, ``mwmbl``, ``startpage``,
|
[ ``google``, ``dbpedia``, ``duckduckgo``, ``mwmbl``, ``startpage``,
|
||||||
``wikipedia``, ``swisscows``, ``qwant`` ]
|
``privacywall``, ``wikipedia``, ``swisscows``, ``qwant`` ]
|
||||||
|
|
||||||
Service which completes words as you type.
|
Service which completes words as you type.
|
||||||
|
|
||||||
|
|||||||
@@ -179,6 +179,23 @@ def naver(query: str, _sxng_locale: str) -> list[str]:
|
|||||||
return results
|
return results
|
||||||
|
|
||||||
|
|
||||||
|
def privacywall(query: str, sxng_locale: str) -> list[str]:
|
||||||
|
# Privacywall search autocompleter
|
||||||
|
country = None
|
||||||
|
if "-" in sxng_locale:
|
||||||
|
country = sxng_locale.split("-")[1]
|
||||||
|
args = {'q': query, 'cc': country}
|
||||||
|
|
||||||
|
url = f"https://www.privacywall.org/search/secure/suggestions.php?{urlencode(args)}"
|
||||||
|
response = get(url)
|
||||||
|
|
||||||
|
if not response.ok:
|
||||||
|
return []
|
||||||
|
|
||||||
|
data: list[list[str]] = response.json()
|
||||||
|
return data[1]
|
||||||
|
|
||||||
|
|
||||||
def qihu360search(query: str, _sxng_locale: str) -> list[str]:
|
def qihu360search(query: str, _sxng_locale: str) -> list[str]:
|
||||||
# 360Search search autocompleter
|
# 360Search search autocompleter
|
||||||
url = f"https://sug.so.360.cn/suggest?{urlencode({'format': 'json', 'word': query})}"
|
url = f"https://sug.so.360.cn/suggest?{urlencode({'format': 'json', 'word': query})}"
|
||||||
@@ -361,6 +378,7 @@ backends: dict[str, t.Callable[[str, str], list[str]]] = {
|
|||||||
'google': google_complete,
|
'google': google_complete,
|
||||||
'mwmbl': mwmbl,
|
'mwmbl': mwmbl,
|
||||||
'naver': naver,
|
'naver': naver,
|
||||||
|
'privacywall': privacywall,
|
||||||
'quark': quark,
|
'quark': quark,
|
||||||
'qwant': qwant,
|
'qwant': qwant,
|
||||||
'seznam': seznam,
|
'seznam': seznam,
|
||||||
|
|||||||
+2
-2
@@ -41,8 +41,8 @@ search:
|
|||||||
# Filter results. 0: None, 1: Moderate, 2: Strict
|
# Filter results. 0: None, 1: Moderate, 2: Strict
|
||||||
safe_search: 0
|
safe_search: 0
|
||||||
# Existing autocomplete backends: "360search", "baidu", "bing", "brave", "dbpedia", "duckduckgo", "google",
|
# Existing autocomplete backends: "360search", "baidu", "bing", "brave", "dbpedia", "duckduckgo", "google",
|
||||||
# "yandex", "mwmbl", "naver", "seznam", "sogou", "startpage", "swisscows", "quark", "qwant", "wikipedia" -
|
# "yandex", "privacywall", "mwmbl", "naver", "seznam", "sogou", "startpage", "swisscows", "quark", "qwant",
|
||||||
# leave blank to turn it off by default.
|
# "wikipedia" - leave blank to turn it off by default.
|
||||||
autocomplete: ""
|
autocomplete: ""
|
||||||
# minimun characters to type before autocompleter starts
|
# minimun characters to type before autocompleter starts
|
||||||
autocomplete_min: 4
|
autocomplete_min: 4
|
||||||
|
|||||||
Reference in New Issue
Block a user