From b513365fcaa38739fe5f78b313396f2e06a959da Mon Sep 17 00:00:00 2001 From: Zhijie He Date: Thu, 23 Jan 2025 20:17:49 +0800 Subject: [PATCH] [feat] add Baidu search autocompleter --- searx/autocomplete.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/searx/autocomplete.py b/searx/autocomplete.py index 09589cf1f..a7701273d 100644 --- a/searx/autocomplete.py +++ b/searx/autocomplete.py @@ -36,6 +36,26 @@ def post(*args, **kwargs): return http_post(*args, **kwargs) +def baidu(query, _lang): + # baidu search autocompleter + base_url = "https://www.baidu.com/sugrec?" + response = get(base_url + urlencode({ + 'ie': 'utf-8', + 'json': 1, + 'prod': 'pc', + 'wd': query + })) + + results = [] + + if response.ok: + data = response.json() + if 'g' in data: + for item in data['g']: + results.append(item['q']) + return results + + def brave(query, _lang): # brave search autocompleter url = 'https://search.brave.com/api/suggest?' @@ -238,6 +258,7 @@ def yandex(query, _lang): backends = { + 'baidu': baidu, 'dbpedia': dbpedia, 'duckduckgo': duckduckgo, 'google': google_complete,