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/swisscows.py | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'searx/engines/swisscows.py') diff --git a/searx/engines/swisscows.py b/searx/engines/swisscows.py index 45e9d87a9..ff4df24b7 100644 --- a/searx/engines/swisscows.py +++ b/searx/engines/swisscows.py @@ -14,6 +14,7 @@ from json import loads import re from lxml.html import fromstring from searx.url_utils import unquote, urlencode +from searx.utils import match_language # engine dependent config categories = ['general', 'images'] @@ -35,11 +36,8 @@ regex_img_url_remove_start = re.compile(b'^https?://i\.swisscows\.ch/\?link=') # do search-request def request(query, params): - if params['language'].split('-')[0] == 'no': - region = 'nb-NO' - else: - region = params['language'] - ui_language = params['language'].split('-')[0] + region = match_language(params['language'], supported_languages) + ui_language = region.split('-')[0] search_path = search_string.format( query=urlencode({'query': query, 'uiLanguage': ui_language, 'region': region}), -- cgit v1.2.3