@@ -22,6 +22,7 @@ about = {
22# search-url
22# search-url
23search_url = 'https://{language}.wikipedia.org/api/rest_v1/page/summary/{title}'
23search_url = 'https://{language}.wikipedia.org/api/rest_v1/page/summary/{title}'
24supported_languages_url = 'https://meta.wikimedia.org/wiki/List_of_Wikipedias'
24supported_languages_url = 'https://meta.wikimedia.org/wiki/List_of_Wikipedias'
25+language_variants = {"zh": ("zh-cn", "zh-hk", "zh-mo", "zh-my", "zh-sg", "zh-tw")}
27# set language in base_url
28# set language in base_url
@@ -37,8 +38,12 @@ def request(query, params):
37 if query.islower():
38 if query.islower():
38 query = query.title()
39 query = query.title()
41+ language = url_lang(params['language'])
40 params['url'] = search_url.format(title=quote(query),
42 params['url'] = search_url.format(title=quote(query),
41− language=url_lang(params['language']))
43+ language=language)
45+ if params['language'].lower() in language_variants.get(language, []):
46+ params['headers']['Accept-Language'] = params['language'].lower()
43 params['headers']['User-Agent'] = searx_useragent()
48 params['headers']['User-Agent'] = searx_useragent()
44 params['raise_for_httperror'] = False
49 params['raise_for_httperror'] = False
@@ -60,7 +65,7 @@ def response(resp):
60 if api_result.get('type') != 'standard':
65 if api_result.get('type') != 'standard':
63− title = api_result['title']
68+ title = api_result['displaytitle']
64 wikipedia_link = api_result['content_urls']['desktop']['page']
69 wikipedia_link = api_result['content_urls']['desktop']['page']
66 results.append({'url': wikipedia_link, 'title': title})
71 results.append({'url': wikipedia_link, 'title': title})