summaryrefslogtreecommitdiff
path: root/searx/engines/wikipedia.py
diff options
context:
space:
mode:
authormarc <a01200356@itesm.mx>2016-08-05 23:34:56 -0500
committermarc <a01200356@itesm.mx>2016-12-13 19:32:00 -0600
commit149802c56926bf48520c98932c4c36b8152b3d2d (patch)
treef450a584a785c31a1c118be29b3039f779a0cb70 /searx/engines/wikipedia.py
parente58949b76fac7aa93341523ff0e2f35e0a03e057 (diff)
downloadsearxng-149802c56926bf48520c98932c4c36b8152b3d2d.tar.gz
searxng-149802c56926bf48520c98932c4c36b8152b3d2d.zip
[enh] add supported_languages on engines and auto-generate languages.py
Diffstat (limited to 'searx/engines/wikipedia.py')
-rw-r--r--searx/engines/wikipedia.py35
1 files changed, 33 insertions, 2 deletions
diff --git a/searx/engines/wikipedia.py b/searx/engines/wikipedia.py
index 70191d22b..fdba5ed68 100644
--- a/searx/engines/wikipedia.py
+++ b/searx/engines/wikipedia.py
@@ -13,6 +13,36 @@
from json import loads
from urllib import urlencode, quote
+supported_languages = ["en", "sv", "ceb", "de", "nl", "fr", "ru", "it", "es", "war",
+ "pl", "vi", "ja", "pt", "zh", "uk", "ca", "fa", "no", "sh",
+ "ar", "fi", "hu", "id", "ro", "cs", "ko", "sr", "ms", "tr",
+ "eu", "eo", "min", "bg", "da", "kk", "sk", "hy", "he", "zh-min-nan",
+ "lt", "hr", "sl", "et", "ce", "gl", "nn", "uz", "la", "vo",
+ "el", "simple", "be", "az", "th", "ur", "ka", "hi", "oc", "ta",
+ "mk", "mg", "new", "lv", "cy", "bs", "tt", "tl", "te", "pms",
+ "be-tarask", "br", "sq", "ky", "ht", "jv", "tg", "ast", "zh-yue", "lb",
+ "mr", "ml", "bn", "pnb", "is", "af", "sco", "ga", "ba", "fy",
+ "cv", "lmo", "sw", "my", "an", "yo", "ne", "io", "gu", "nds",
+ "scn", "bpy", "pa", "ku", "als", "kn", "bar", "ia", "qu", "su",
+ "ckb", "bat-smg", "mn", "arz", "nap", "wa", "bug", "gd", "yi", "map-bms",
+ "am", "mzn", "fo", "si", "nah", "li", "sah", "vec", "hsb", "or",
+ "os", "mrj", "sa", "hif", "mhr", "roa-tara", "azb", "pam", "ilo",
+ "sd", "ps", "se", "mi", "bh", "eml", "bcl", "xmf", "diq", "hak",
+ "gan", "glk", "vls", "nds-nl", "rue", "bo", "fiu-vro", "co", "sc",
+ "tk", "csb", "lrc", "vep", "wuu", "km", "szl", "gv", "crh", "kv",
+ "zh-classical", "frr", "zea", "as", "so", "kw", "nso", "ay", "stq",
+ "udm", "cdo", "nrm", "ie", "koi", "rm", "pcd", "myv", "mt", "fur",
+ "ace", "lad", "gn", "lij", "dsb", "dv", "cbk-zam", "ext", "gom",
+ "kab", "ksh", "ang", "mai", "mwl", "lez", "gag", "ln", "ug", "pi",
+ "pag", "frp", "sn", "nv", "av", "pfl", "haw", "xal", "krc", "kaa",
+ "rw", "bxr", "pdc", "to", "kl", "nov", "arc", "kbd", "lo", "bjn",
+ "pap", "ha", "tet", "ki", "tyv", "tpi", "na", "lbe", "ig", "jbo",
+ "roa-rup", "ty", "jam", "za", "kg", "mdf", "lg", "wo", "srn", "ab",
+ "ltg", "zu", "sm", "chr", "om", "tn", "chy", "rmy", "cu", "tw", "tum",
+ "xh", "bi", "rn", "pih", "got", "ss", "pnt", "bm", "ch", "mo", "ts",
+ "ady", "iu", "st", "ee", "ny", "fj", "ks", "ak", "ik", "sg", "ve",
+ "dz", "ff", "ti", "cr", "ng", "cho", "kj", "mh", "ho", "ii", "aa", "mus", "hz", "kr"]
+
# search-url
base_url = 'https://{language}.wikipedia.org/'
search_postfix = 'w/api.php?'\
@@ -28,10 +58,11 @@ search_postfix = 'w/api.php?'\
# set language in base_url
def url_lang(lang):
- if lang == 'all':
+ lang = lang.split('-')[0]
+ if lang == 'all' or lang not in supported_languages:
language = 'en'
else:
- language = lang.split('_')[0]
+ language = lang
return base_url.format(language=language)