on master help sign in
Merge pull request #2799 from MarcAbonce/fix_qwant_locales
f045c38Adam Tauber
searx/data/engines_languages.json+137−474
@@ -25650,480 +25650,135 @@
25650 "zh",
25650 "zh",
25651 "zu"
25651 "zu"
25652 ],
25652 ],
25653− "qwant": {
25653+ "qwant": [
25654− "bg-BG": {
25654+ "bg-BG",
25655− "name": "\u0431\u044a\u043b\u0433\u0430\u0440\u0441\u043a\u0438 \u0435\u0437\u0438\u043a"
25655+ "ca-ES",
25656− },
25656+ "cs-CZ",
25657− "br-FR": {
25657+ "da-DK",
25658− "name": "Brezhoneg"
25658+ "de-AT",
25659− },
25659+ "de-CH",
25660− "ca-AD": {
25660+ "de-DE",
25661− "name": "Catal\u00e0"
25661+ "el-GR",
25662− },
25662+ "en-AU",
25663− "ca-ES": {
25663+ "en-CA",
25664− "name": "Catal\u00e0"
25665− },
25666− "ca-FR": {
25667− "name": "Catal\u00e0"
25668− },
25669− "co-FR": {
25670− "name": "Corsu"
25671− },
25672− "cs-CZ": {
25673− "name": "\u010cesky"
25674− },
25675− "cy-GB": {
25664+ "en-GB",
25676− "name": "Welsh"
25665+ "en-IE",
25677− },
25666+ "en-IN",
25678− "da-DK": {
25667+ "en-MY",
25679− "name": "Dansk"
25668+ "en-NZ",
25680− },
25669+ "en-US",
25681− "de-AT": {
25670+ "es-AR",
25682− "name": "Deutsch"
25671+ "es-CL",
25683− },
25672+ "es-ES",
25684− "de-CH": {
25673+ "es-MX",
25685− "name": "Deutsch"
25674+ "et-EE",
25686− },
25675+ "fi-FI",
25687− "de-DE": {
25676+ "fr-BE",
25688− "name": "Deutsch"
25677+ "fr-CA",
25689− },
25678+ "fr-CH",
25690− "el-GR": {
25679+ "fr-FR",
25691− "name": "\u0395\u03bb\u03bb\u03b7\u03bd\u03b9\u03ba\u03ac"
25680+ "hu-HU",
25692− },
25681+ "it-CH",
25693− "en-AU": {
25682+ "it-IT",
25694− "name": "English"
25683+ "ko-KR",
25695− },
25684+ "nb-NO",
25696− "en-CA": {
25685+ "nl-BE",
25697− "name": "English"
25686+ "nl-NL",
25698− },
25687+ "pl-PL",
25699− "en-GB": {
25700− "name": "English"
25701− },
25702− "en-IE": {
25703− "name": "English"
25704− },
25705− "en-IN": {
25706− "name": "English"
25707− },
25708− "en-MY": {
25709− "name": "English"
25710− },
25711− "en-NZ": {
25712− "name": "English"
25713− },
25714− "en-US": {
25715− "name": "English"
25716− },
25717− "es-AD": {
25718− "name": "Espa\u00f1ol"
25719− },
25720− "es-AR": {
25721− "name": "Espa\u00f1ol"
25722− },
25723− "es-CL": {
25724− "name": "Espa\u00f1ol"
25725− },
25726− "es-ES": {
25727− "name": "Espa\u00f1ol"
25728− },
25729− "es-MX": {
25730− "name": "Espa\u00f1ol"
25731− },
25732− "et-EE": {
25733− "name": "Eesti keel"
25734− },
25735− "eu-ES": {
25736− "name": "Euskara"
25737− },
25738− "eu-FR": {
25739− "name": "Euskara"
25740− },
25741− "fi-FI": {
25742− "name": "Suomen kieli"
25743− },
25744− "fr-AD": {
25745− "name": "Fran\u00e7ais"
25746− },
25747− "fr-BE": {
25748− "name": "Fran\u00e7ais"
25749− },
25750− "fr-CA": {
25751− "name": "Fran\u00e7ais"
25752− },
25753− "fr-CH": {
25754− "name": "Fran\u00e7ais"
25755− },
25756− "fr-FR": {
25757− "name": "Fran\u00e7ais"
25758− },
25759− "gd-GB": {
25760− "name": "Scottish"
25761− },
25762− "hu-HU": {
25763− "name": "magyar"
25764− },
25765− "it-CH": {
25766− "name": "Italiano"
25767− },
25768− "it-IT": {
25769− "name": "Italiano"
25770− },
25771− "ko-KR": {
25772− "name": "\ud55c\uad6d\uc5b4"
25773− },
25774− "nb-NO": {
25775− "name": "Norsk"
25776− },
25777− "nl-BE": {
25778− "name": "Nederlands"
25779− },
25780− "nl-NL": {
25781− "name": "Nederlands"
25782− },
25783− "pl-PL": {
25784− "name": "Polski"
25785− },
25786− "pt-AD": {
25787− "name": "Portugu\u00eas"
25788− },
25789− "pt-BR": {
25688+ "pt-BR",
25790− "name": "Portugu\u00eas"
25791− },
25792− "pt-PT": {
25689+ "pt-PT",
25793− "name": "Portugu\u00eas"
25794− },
25795− "ro-RO": {
25690+ "ro-RO",
25796− "name": "Rom\u00e2n\u0103"
25797− },
25798− "sv-SE": {
25691+ "sv-SE",
25799− "name": "Svenska"
25800− },
25801− "th-TH": {
25692+ "th-TH",
25802− "name": "\u0e44\u0e17\u0e22"
25803− },
25804− "zh-CN": {
25693+ "zh-CN",
25805− "name": "\u4e2d\u6587"
25806− },
25807− "zh-HK": {
25694+ "zh-HK"
25808− "name": "\u4e2d\u6587"
25809− }
25810− },
25695+ ],
25811− "qwant images": {
25696+ "qwant images": [
25812− "bg-BG": {
25697+ "bg-BG",
25813− "name": "\u0431\u044a\u043b\u0433\u0430\u0440\u0441\u043a\u0438 \u0435\u0437\u0438\u043a"
25698+ "ca-ES",
25814− },
25699+ "cs-CZ",
25815− "br-FR": {
25700+ "da-DK",
25816− "name": "Brezhoneg"
25701+ "de-AT",
25817− },
25702+ "de-CH",
25818− "ca-AD": {
25703+ "de-DE",
25819− "name": "Catal\u00e0"
25704+ "el-GR",
25820− },
25705+ "en-AU",
25821− "ca-ES": {
25706+ "en-CA",
25822− "name": "Catal\u00e0"
25823− },
25824− "ca-FR": {
25825− "name": "Catal\u00e0"
25826− },
25827− "co-FR": {
25828− "name": "Corsu"
25829− },
25830− "cs-CZ": {
25831− "name": "\u010cesky"
25832− },
25833− "cy-GB": {
25707+ "en-GB",
25834− "name": "Welsh"
25708+ "en-IE",
25835− },
25709+ "en-IN",
25836− "da-DK": {
25710+ "en-MY",
25837− "name": "Dansk"
25711+ "en-NZ",
25838− },
25712+ "en-US",
25839− "de-AT": {
25713+ "es-AR",
25840− "name": "Deutsch"
25714+ "es-CL",
25841− },
25715+ "es-ES",
25842− "de-CH": {
25716+ "es-MX",
25843− "name": "Deutsch"
25717+ "et-EE",
25844− },
25718+ "fi-FI",
25845− "de-DE": {
25719+ "fr-BE",
25846− "name": "Deutsch"
25720+ "fr-CA",
25847− },
25721+ "fr-CH",
25848− "el-GR": {
25722+ "fr-FR",
25849− "name": "\u0395\u03bb\u03bb\u03b7\u03bd\u03b9\u03ba\u03ac"
25723+ "hu-HU",
25850− },
25724+ "it-CH",
25851− "en-AU": {
25725+ "it-IT",
25852− "name": "English"
25726+ "ko-KR",
25853− },
25727+ "nb-NO",
25854− "en-CA": {
25728+ "nl-BE",
25855− "name": "English"
25729+ "nl-NL",
25856− },
25730+ "pl-PL",
25857− "en-GB": {
25858− "name": "English"
25859− },
25860− "en-IE": {
25861− "name": "English"
25862− },
25863− "en-IN": {
25864− "name": "English"
25865− },
25866− "en-MY": {
25867− "name": "English"
25868− },
25869− "en-NZ": {
25870− "name": "English"
25871− },
25872− "en-US": {
25873− "name": "English"
25874− },
25875− "es-AD": {
25876− "name": "Espa\u00f1ol"
25877− },
25878− "es-AR": {
25879− "name": "Espa\u00f1ol"
25880− },
25881− "es-CL": {
25882− "name": "Espa\u00f1ol"
25883− },
25884− "es-ES": {
25885− "name": "Espa\u00f1ol"
25886− },
25887− "es-MX": {
25888− "name": "Espa\u00f1ol"
25889− },
25890− "et-EE": {
25891− "name": "Eesti keel"
25892− },
25893− "eu-ES": {
25894− "name": "Euskara"
25895− },
25896− "eu-FR": {
25897− "name": "Euskara"
25898− },
25899− "fi-FI": {
25900− "name": "Suomen kieli"
25901− },
25902− "fr-AD": {
25903− "name": "Fran\u00e7ais"
25904− },
25905− "fr-BE": {
25906− "name": "Fran\u00e7ais"
25907− },
25908− "fr-CA": {
25909− "name": "Fran\u00e7ais"
25910− },
25911− "fr-CH": {
25912− "name": "Fran\u00e7ais"
25913− },
25914− "fr-FR": {
25915− "name": "Fran\u00e7ais"
25916− },
25917− "gd-GB": {
25918− "name": "Scottish"
25919− },
25920− "hu-HU": {
25921− "name": "magyar"
25922− },
25923− "it-CH": {
25924− "name": "Italiano"
25925− },
25926− "it-IT": {
25927− "name": "Italiano"
25928− },
25929− "ko-KR": {
25930− "name": "\ud55c\uad6d\uc5b4"
25931− },
25932− "nb-NO": {
25933− "name": "Norsk"
25934− },
25935− "nl-BE": {
25936− "name": "Nederlands"
25937− },
25938− "nl-NL": {
25939− "name": "Nederlands"
25940− },
25941− "pl-PL": {
25942− "name": "Polski"
25943− },
25944− "pt-AD": {
25945− "name": "Portugu\u00eas"
25946− },
25947− "pt-BR": {
25731+ "pt-BR",
25948− "name": "Portugu\u00eas"
25949− },
25950− "pt-PT": {
25732+ "pt-PT",
25951− "name": "Portugu\u00eas"
25952− },
25953− "ro-RO": {
25733+ "ro-RO",
25954− "name": "Rom\u00e2n\u0103"
25955− },
25956− "sv-SE": {
25734+ "sv-SE",
25957− "name": "Svenska"
25958− },
25959− "th-TH": {
25735+ "th-TH",
25960− "name": "\u0e44\u0e17\u0e22"
25961− },
25962− "zh-CN": {
25736+ "zh-CN",
25963− "name": "\u4e2d\u6587"
25964− },
25965− "zh-HK": {
25737+ "zh-HK"
25966− "name": "\u4e2d\u6587"
25967− }
25968− },
25738+ ],
25969− "qwant news": {
25739+ "qwant news": [
25970− "bg-BG": {
25740+ "bg-BG",
25971− "name": "\u0431\u044a\u043b\u0433\u0430\u0440\u0441\u043a\u0438 \u0435\u0437\u0438\u043a"
25741+ "ca-ES",
25972− },
25742+ "cs-CZ",
25973− "br-FR": {
25743+ "da-DK",
25974− "name": "Brezhoneg"
25744+ "de-AT",
25975− },
25745+ "de-CH",
25976− "ca-AD": {
25746+ "de-DE",
25977− "name": "Catal\u00e0"
25747+ "el-GR",
25978− },
25748+ "en-AU",
25979− "ca-ES": {
25749+ "en-CA",
25980− "name": "Catal\u00e0"
25981− },
25982− "ca-FR": {
25983− "name": "Catal\u00e0"
25984− },
25985− "co-FR": {
25986− "name": "Corsu"
25987− },
25988− "cs-CZ": {
25989− "name": "\u010cesky"
25990− },
25991− "cy-GB": {
25750+ "en-GB",
25992− "name": "Welsh"
25751+ "en-IE",
25993− },
25752+ "en-IN",
25994− "da-DK": {
25753+ "en-MY",
25995− "name": "Dansk"
25754+ "en-NZ",
25996− },
25755+ "en-US",
25997− "de-AT": {
25756+ "es-AR",
25998− "name": "Deutsch"
25757+ "es-CL",
25999− },
25758+ "es-ES",
26000− "de-CH": {
25759+ "es-MX",
26001− "name": "Deutsch"
25760+ "et-EE",
26002− },
25761+ "fi-FI",
26003− "de-DE": {
25762+ "fr-BE",
26004− "name": "Deutsch"
25763+ "fr-CA",
26005− },
25764+ "fr-CH",
26006− "el-GR": {
25765+ "fr-FR",
26007− "name": "\u0395\u03bb\u03bb\u03b7\u03bd\u03b9\u03ba\u03ac"
25766+ "hu-HU",
26008− },
25767+ "it-CH",
26009− "en-AU": {
25768+ "it-IT",
26010− "name": "English"
25769+ "ko-KR",
26011− },
25770+ "nb-NO",
26012− "en-CA": {
25771+ "nl-BE",
26013− "name": "English"
25772+ "nl-NL",
26014− },
25773+ "pl-PL",
26015− "en-GB": {
26016− "name": "English"
26017− },
26018− "en-IE": {
26019− "name": "English"
26020− },
26021− "en-IN": {
26022− "name": "English"
26023− },
26024− "en-MY": {
26025− "name": "English"
26026− },
26027− "en-NZ": {
26028− "name": "English"
26029− },
26030− "en-US": {
26031− "name": "English"
26032− },
26033− "es-AD": {
26034− "name": "Espa\u00f1ol"
26035− },
26036− "es-AR": {
26037− "name": "Espa\u00f1ol"
26038− },
26039− "es-CL": {
26040− "name": "Espa\u00f1ol"
26041− },
26042− "es-ES": {
26043− "name": "Espa\u00f1ol"
26044− },
26045− "es-MX": {
26046− "name": "Espa\u00f1ol"
26047− },
26048− "et-EE": {
26049− "name": "Eesti keel"
26050− },
26051− "eu-ES": {
26052− "name": "Euskara"
26053− },
26054− "eu-FR": {
26055− "name": "Euskara"
26056− },
26057− "fi-FI": {
26058− "name": "Suomen kieli"
26059− },
26060− "fr-AD": {
26061− "name": "Fran\u00e7ais"
26062− },
26063− "fr-BE": {
26064− "name": "Fran\u00e7ais"
26065− },
26066− "fr-CA": {
26067− "name": "Fran\u00e7ais"
26068− },
26069− "fr-CH": {
26070− "name": "Fran\u00e7ais"
26071− },
26072− "fr-FR": {
26073− "name": "Fran\u00e7ais"
26074− },
26075− "gd-GB": {
26076− "name": "Scottish"
26077− },
26078− "hu-HU": {
26079− "name": "magyar"
26080− },
26081− "it-CH": {
26082− "name": "Italiano"
26083− },
26084− "it-IT": {
26085− "name": "Italiano"
26086− },
26087− "ko-KR": {
26088− "name": "\ud55c\uad6d\uc5b4"
26089− },
26090− "nb-NO": {
26091− "name": "Norsk"
26092− },
26093− "nl-BE": {
26094− "name": "Nederlands"
26095− },
26096− "nl-NL": {
26097− "name": "Nederlands"
26098− },
26099− "pl-PL": {
26100− "name": "Polski"
26101− },
26102− "pt-AD": {
26103− "name": "Portugu\u00eas"
26104− },
26105− "pt-BR": {
25774+ "pt-BR",
26106− "name": "Portugu\u00eas"
26107− },
26108− "pt-PT": {
25775+ "pt-PT",
26109− "name": "Portugu\u00eas"
26110− },
26111− "ro-RO": {
25776+ "ro-RO",
26112− "name": "Rom\u00e2n\u0103"
26113− },
26114− "sv-SE": {
25777+ "sv-SE",
26115− "name": "Svenska"
26116− },
26117− "th-TH": {
25778+ "th-TH",
26118− "name": "\u0e44\u0e17\u0e22"
26119− },
26120− "zh-CN": {
25779+ "zh-CN",
26121− "name": "\u4e2d\u6587"
26122− },
26123− "zh-HK": {
25780+ "zh-HK"
26124− "name": "\u4e2d\u6587"
26125− }
26126− },
25781+ ],
26127 "startpage": {
25782 "startpage": {
26128 "af": {
25783 "af": {
26129 "alias": "afrikaans"
25784 "alias": "afrikaans"
@@ -27428,6 +27083,10 @@
27428 "english_name": "Tamil",
27083 "english_name": "Tamil",
27429 "name": "\u0ba4\u0bae\u0bbf\u0bb4\u0bcd"
27084 "name": "\u0ba4\u0bae\u0bbf\u0bb4\u0bcd"
27430 },
27085 },
27086+ "tay": {
27087+ "english_name": "Tayal",
27088+ "name": "Tayal"
27089+ },
27431 "tcy": {
27090 "tcy": {
27432 "english_name": "Tulu",
27091 "english_name": "Tulu",
27433 "name": "\u0ca4\u0cc1\u0cb3\u0cc1"
27092 "name": "\u0ca4\u0cc1\u0cb3\u0cc1"
@@ -28666,6 +28325,10 @@
28666 "english_name": "Tamil",
28325 "english_name": "Tamil",
28667 "name": "\u0ba4\u0bae\u0bbf\u0bb4\u0bcd"
28326 "name": "\u0ba4\u0bae\u0bbf\u0bb4\u0bcd"
28668 },
28327 },
28328+ "tay": {
28329+ "english_name": "Tayal",
28330+ "name": "Tayal"
28331+ },
28669 "tcy": {
28332 "tcy": {
28670 "english_name": "Tulu",
28333 "english_name": "Tulu",
28671 "name": "\u0ca4\u0cc1\u0cb3\u0cc1"
28334 "name": "\u0ca4\u0cc1\u0cb3\u0cc1"
searx/engines/qwant.py+8−8
@@ -23,7 +23,7 @@ about = {
23# engine dependent config
23# engine dependent config
24categories = []
24categories = []
25paging = True
25paging = True
26−supported_languages_url = 'https://qwant.com/region'
26+supported_languages_url = about['website']
27
27
28category_to_keyword = {'general': 'web',
28category_to_keyword = {'general': 'web',
29 'images': 'images',
29 'images': 'images',
@@ -125,15 +125,15 @@ def response(resp):
125def _fetch_supported_languages(resp):
125def _fetch_supported_languages(resp):
126 # list of regions is embedded in page as a js object
126 # list of regions is embedded in page as a js object
127 response_text = resp.text
127 response_text = resp.text
128− response_text = response_text[response_text.find('regionalisation'):]
128+ response_text = response_text[response_text.find('INITIAL_PROPS'):]
129− response_text = response_text[response_text.find('{'):response_text.find(');')]
129+ response_text = response_text[response_text.find('{'):response_text.find('</script>')]
130
130
131 regions_json = loads(response_text)
131 regions_json = loads(response_text)
132
132
133− supported_languages = {}
133+ supported_languages = []
134− for lang in regions_json['languages'].values():
134+ for country, langs in regions_json['locales'].items():
135− for country in lang['countries']:
135+ for lang in langs['langs']:
136− lang_code = "{lang}-{country}".format(lang=lang['code'], country=country)
136+ lang_code = "{lang}-{country}".format(lang=lang, country=country)
137− supported_languages[lang_code] = {'name': lang['name']}
137+ supported_languages.append(lang_code)
138
138
139 return supported_languages
139 return supported_languages