From 772c048d01c7585fd60afca1ce30a1914e6e5b4a Mon Sep 17 00:00:00 2001 From: Marc Abonce Seguin Date: Wed, 28 Feb 2018 22:30:48 -0600 Subject: 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. --- searx/engines/google_news.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'searx/engines/google_news.py') diff --git a/searx/engines/google_news.py b/searx/engines/google_news.py index 8b8e7175d..41abf0a01 100644 --- a/searx/engines/google_news.py +++ b/searx/engines/google_news.py @@ -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 -- cgit v1.2.3