mirror of
https://github.com/searxng/searxng.git
synced 2025-12-22 19:50:00 +00:00
refactor engine's search language handling
Add match_language function in utils to match any user given language code with a list of engine's supported languages. Also add language_aliases dict on each engine to translate standard language codes into the custom codes used by the engine.
This commit is contained in:
@@ -13,6 +13,7 @@
|
||||
from lxml import html
|
||||
from searx.engines.google import _fetch_supported_languages, supported_languages_url
|
||||
from searx.url_utils import urlencode
|
||||
from searx.utils import match_language
|
||||
|
||||
# search-url
|
||||
categories = ['news']
|
||||
@@ -50,8 +51,9 @@ def request(query, params):
|
||||
params['url'] = search_url.format(query=urlencode({'q': query}),
|
||||
search_options=urlencode(search_options))
|
||||
|
||||
language_array = params['language'].lower().split('-')
|
||||
params['url'] += '&lr=lang_' + language_array[0]
|
||||
language = match_language(params['language'], supported_languages).split('-')[0]
|
||||
if language:
|
||||
params['url'] += '&lr=lang_' + language
|
||||
|
||||
return params
|
||||
|
||||
|
||||
Reference in New Issue
Block a user