on master help sign in
[mod] dynamically set language_support variable
ca93a01Alexandre Flament
docs/dev/engine_overview.rst−2
@@ -42,7 +42,6 @@ argument type information
42======================= =========== ========================================================
42======================= =========== ========================================================
43categories list pages, in which the engine is working
43categories list pages, in which the engine is working
44paging boolean support multible pages
44paging boolean support multible pages
45−language_support boolean support language choosing
46time_range_support boolean support search time range
45time_range_support boolean support search time range
47engine_type str ``online`` by default, other possibles values are
46engine_type str ``online`` by default, other possibles values are
48 ``offline``, ``online_dictionnary``, ``online_currency``
47 ``offline``, ``online_dictionnary``, ``online_currency``
@@ -97,7 +96,6 @@ example code
97 # engine dependent config
96 # engine dependent config
98 categories = ['general']
97 categories = ['general']
99 paging = True
98 paging = True
100− language_support = True
101
99
102
100
103making a request
101making a request
searx/engines/__init__.py+3−1
@@ -44,7 +44,6 @@ babel_langs = [lang_parts[0] + '-' + lang_parts[-1] if len(lang_parts) > 1 else
44engine_shortcuts = {}
44engine_shortcuts = {}
45engine_default_args = {'paging': False,
45engine_default_args = {'paging': False,
46 'categories': ['general'],
46 'categories': ['general'],
47− 'language_support': True,
48 'supported_languages': [],
47 'supported_languages': [],
49 'safesearch': False,
48 'safesearch': False,
50 'timeout': settings['outgoing']['request_timeout'],
49 'timeout': settings['outgoing']['request_timeout'],
@@ -127,6 +126,9 @@ def load_engine(engine_data):
127
126
128 setattr(engine, 'language_aliases', language_aliases)
127 setattr(engine, 'language_aliases', language_aliases)
129
128
129+ # language_support
130+ setattr(engine, 'language_support', len(getattr(engine, 'supported_languages', [])) > 0)
131+
130 # assign language fetching method if auxiliary method exists
132 # assign language fetching method if auxiliary method exists
131 if hasattr(engine, '_fetch_supported_languages'):
133 if hasattr(engine, '_fetch_supported_languages'):
132 setattr(engine, 'fetch_supported_languages',
134 setattr(engine, 'fetch_supported_languages',
searx/engines/archlinux.py−1
@@ -21,7 +21,6 @@ about = {
21
21
22# engine dependent config
22# engine dependent config
23categories = ['it']
23categories = ['it']
24−language_support = True
25paging = True
24paging = True
26base_url = 'https://wiki.archlinux.org'
25base_url = 'https://wiki.archlinux.org'
27
26
searx/engines/bing.py−1
@@ -24,7 +24,6 @@ about = {
24# engine dependent config
24# engine dependent config
25categories = ['general']
25categories = ['general']
26paging = True
26paging = True
27−language_support = True
28supported_languages_url = 'https://www.bing.com/account/general'
27supported_languages_url = 'https://www.bing.com/account/general'
29language_aliases = {'zh-CN': 'zh-CHS', 'zh-TW': 'zh-CHT', 'zh-HK': 'zh-CHT'}
28language_aliases = {'zh-CN': 'zh-CHS', 'zh-TW': 'zh-CHT', 'zh-HK': 'zh-CHT'}
30
29
searx/engines/bing_images.py−1
@@ -26,7 +26,6 @@ categories = ['images']
26paging = True
26paging = True
27safesearch = True
27safesearch = True
28time_range_support = True
28time_range_support = True
29−language_support = True
30supported_languages_url = 'https://www.bing.com/account/general'
29supported_languages_url = 'https://www.bing.com/account/general'
31number_of_results = 28
30number_of_results = 28
32
31
searx/engines/bing_news.py−1
@@ -25,7 +25,6 @@ about = {
25# engine dependent config
25# engine dependent config
26categories = ['news']
26categories = ['news']
27paging = True
27paging = True
28−language_support = True
29time_range_support = True
28time_range_support = True
30
29
31# search-url
30# search-url
searx/engines/bing_videos.py−1
@@ -26,7 +26,6 @@ paging = True
26safesearch = True
26safesearch = True
27time_range_support = True
27time_range_support = True
28number_of_results = 28
28number_of_results = 28
29−language_support = True
30
29
31base_url = 'https://www.bing.com/'
30base_url = 'https://www.bing.com/'
32search_string = 'videos/search'\
31search_string = 'videos/search'\
searx/engines/dailymotion.py−1
@@ -21,7 +21,6 @@ about = {
21# engine dependent config
21# engine dependent config
22categories = ['videos']
22categories = ['videos']
23paging = True
23paging = True
24−language_support = True
25
24
26# search-url
25# search-url
27# see http://www.dailymotion.com/doc/api/obj-video.html
26# see http://www.dailymotion.com/doc/api/obj-video.html
searx/engines/doku.py−1
@@ -20,7 +20,6 @@ about = {
20# engine dependent config
20# engine dependent config
21categories = ['general'] # TODO , 'images', 'music', 'videos', 'files'
21categories = ['general'] # TODO , 'images', 'music', 'videos', 'files'
22paging = False
22paging = False
23−language_support = False
24number_of_results = 5
23number_of_results = 5
25
24
26# search-url
25# search-url
searx/engines/duckduckgo.py−1
@@ -20,7 +20,6 @@ about = {
20# engine dependent config
20# engine dependent config
21categories = ['general']
21categories = ['general']
22paging = False
22paging = False
23−language_support = True
24supported_languages_url = 'https://duckduckgo.com/util/u172.js'
23supported_languages_url = 'https://duckduckgo.com/util/u172.js'
25time_range_support = True
24time_range_support = True
26
25
searx/engines/duckduckgo_images.py−1
@@ -26,7 +26,6 @@ about = {
26# engine dependent config
26# engine dependent config
27categories = ['images']
27categories = ['images']
28paging = True
28paging = True
29−language_support = True
30safesearch = True
29safesearch = True
31
30
32# search-url
31# search-url
searx/engines/duden.py−1
@@ -20,7 +20,6 @@ about = {
20
20
21categories = ['general']
21categories = ['general']
22paging = True
22paging = True
23−language_support = False
24
23
25# search-url
24# search-url
26base_url = 'https://www.duden.de/'
25base_url = 'https://www.duden.de/'
searx/engines/etools.py−1
@@ -19,7 +19,6 @@ about = {
19
19
20categories = ['general']
20categories = ['general']
21paging = False
21paging = False
22−language_support = False
23safesearch = True
22safesearch = True
24
23
25base_url = 'https://www.etools.ch'
24base_url = 'https://www.etools.ch'
searx/engines/genius.py−1
@@ -20,7 +20,6 @@ about = {
20# engine dependent config
20# engine dependent config
21categories = ['music']
21categories = ['music']
22paging = True
22paging = True
23−language_support = False
24page_size = 5
23page_size = 5
25
24
26url = 'https://genius.com/api/'
25url = 'https://genius.com/api/'
searx/engines/gentoo.py−1
@@ -19,7 +19,6 @@ about = {
19
19
20# engine dependent config
20# engine dependent config
21categories = ['it']
21categories = ['it']
22−language_support = True
23paging = True
22paging = True
24base_url = 'https://wiki.gentoo.org'
23base_url = 'https://wiki.gentoo.org'
25
24
searx/engines/gigablast.py−1
@@ -24,7 +24,6 @@ about = {
24categories = ['general']
24categories = ['general']
25# gigablast's pagination is totally damaged, don't use it
25# gigablast's pagination is totally damaged, don't use it
26paging = False
26paging = False
27−language_support = True
28safesearch = True
27safesearch = True
29
28
30# search-url
29# search-url
searx/engines/google.py−1
@@ -31,7 +31,6 @@ about = {
31# engine dependent config
31# engine dependent config
32categories = ['general']
32categories = ['general']
33paging = True
33paging = True
34−language_support = True
35time_range_support = True
34time_range_support = True
36safesearch = True
35safesearch = True
37supported_languages_url = 'https://www.google.com/preferences?#languages'
36supported_languages_url = 'https://www.google.com/preferences?#languages'
searx/engines/google_images.py−1
@@ -56,7 +56,6 @@ about = {
56# engine dependent config
56# engine dependent config
57categories = ['images']
57categories = ['images']
58paging = False
58paging = False
59−language_support = True
60use_locale_domain = True
59use_locale_domain = True
61time_range_support = True
60time_range_support = True
62safesearch = True
61safesearch = True
searx/engines/google_news.py−1
@@ -68,7 +68,6 @@ time_range_dict = {
68
68
69categories = ['news']
69categories = ['news']
70paging = False
70paging = False
71−language_support = True
72use_locale_domain = True
71use_locale_domain = True
73time_range_support = True
72time_range_support = True
74
73
searx/engines/invidious.py−1
@@ -21,7 +21,6 @@ about = {
21# engine dependent config
21# engine dependent config
22categories = ["videos", "music"]
22categories = ["videos", "music"]
23paging = True
23paging = True
24−language_support = True
25time_range_support = True
24time_range_support = True
26
25
27
26
searx/engines/mediawiki.py−1
@@ -19,7 +19,6 @@ about = {
19
19
20# engine dependent config
20# engine dependent config
21categories = ['general']
21categories = ['general']
22−language_support = True
23paging = True
22paging = True
24number_of_results = 1
23number_of_results = 1
25search_type = 'nearmatch' # possible values: title, text, nearmatch
24search_type = 'nearmatch' # possible values: title, text, nearmatch
searx/engines/peertube.py−1
@@ -21,7 +21,6 @@ about = {
21# engine dependent config
21# engine dependent config
22categories = ["videos"]
22categories = ["videos"]
23paging = True
23paging = True
24−language_support = True
25base_url = "https://peer.tube/"
24base_url = "https://peer.tube/"
26supported_languages_url = base_url + "api/v1/videos/languages"
25supported_languages_url = base_url + "api/v1/videos/languages"
27
26
searx/engines/photon.py−1
@@ -20,7 +20,6 @@ about = {
20# engine dependent config
20# engine dependent config
21categories = ['map']
21categories = ['map']
22paging = False
22paging = False
23−language_support = True
24number_of_results = 10
23number_of_results = 10
25
24
26# search-url
25# search-url
searx/engines/qwant.py−1
@@ -23,7 +23,6 @@ about = {
23# engine dependent config
23# engine dependent config
24categories = []
24categories = []
25paging = True
25paging = True
26−language_support = True
27supported_languages_url = 'https://qwant.com/region'
26supported_languages_url = 'https://qwant.com/region'
28
27
29category_to_keyword = {'general': 'web',
28category_to_keyword = {'general': 'web',
searx/engines/sepiasearch.py−1
@@ -20,7 +20,6 @@ about = {
20
20
21categories = ['videos']
21categories = ['videos']
22paging = True
22paging = True
23−language_support = True
24time_range_support = True
23time_range_support = True
25safesearch = True
24safesearch = True
26supported_languages = [
25supported_languages = [
searx/engines/startpage.py−1
@@ -29,7 +29,6 @@ categories = ['general']
29# storing of qid's between mulitble search-calls
29# storing of qid's between mulitble search-calls
30
30
31paging = True
31paging = True
32−language_support = True
33supported_languages_url = 'https://www.startpage.com/do/settings'
32supported_languages_url = 'https://www.startpage.com/do/settings'
34
33
35# search-url
34# search-url
searx/engines/yacy.py−1
@@ -24,7 +24,6 @@ about = {
24# engine dependent config
24# engine dependent config
25categories = ['general', 'images'] # TODO , 'music', 'videos', 'files'
25categories = ['general', 'images'] # TODO , 'music', 'videos', 'files'
26paging = True
26paging = True
27−language_support = True
28number_of_results = 5
27number_of_results = 5
29http_digest_auth_user = ""
28http_digest_auth_user = ""
30http_digest_auth_pass = ""
29http_digest_auth_pass = ""
searx/engines/yahoo.py−1
@@ -20,7 +20,6 @@ about = {
20# engine dependent config
20# engine dependent config
21categories = ['general']
21categories = ['general']
22paging = True
22paging = True
23−language_support = True
24time_range_support = True
23time_range_support = True
25
24
26# search-url
25# search-url
searx/engines/yahoo_news.py−1
@@ -25,7 +25,6 @@ about = {
25# engine dependent config
25# engine dependent config
26categories = ['news']
26categories = ['news']
27paging = True
27paging = True
28−language_support = True
29
28
30# search-url
29# search-url
31search_url = 'https://news.search.yahoo.com/search?{query}&b={offset}&{lang}=uh3_news_web_gs_1&pz=10&xargs=0&vl=lang_{lang}' # noqa
30search_url = 'https://news.search.yahoo.com/search?{query}&b={offset}&{lang}=uh3_news_web_gs_1&pz=10&xargs=0&vl=lang_{lang}' # noqa
searx/engines/yandex.py−1
@@ -23,7 +23,6 @@ about = {
23# engine dependent config
23# engine dependent config
24categories = ['general']
24categories = ['general']
25paging = True
25paging = True
26−language_support = True # TODO
27
26
28default_tld = 'com'
27default_tld = 'com'
29language_map = {'ru': 'ru',
28language_map = {'ru': 'ru',
searx/engines/youtube_api.py−1
@@ -21,7 +21,6 @@ about = {
21# engine dependent config
21# engine dependent config
22categories = ['videos', 'music']
22categories = ['videos', 'music']
23paging = False
23paging = False
24−language_support = True
25api_key = None
24api_key = None
26
25
27# search-url
26# search-url
searx/engines/youtube_noapi.py−1
@@ -20,7 +20,6 @@ about = {
20# engine dependent config
20# engine dependent config
21categories = ['videos', 'music']
21categories = ['videos', 'music']
22paging = True
22paging = True
23−language_support = False
24time_range_support = True
23time_range_support = True
25
24
26# search-url
25# search-url