mirror of
https://github.com/searxng/searxng
synced 2024-01-01 19:24:07 +01:00
This patch adds the boilerplate code, needed to fetch properties from engines.
In the past we only fetched *languages* but some engines need *regions* to
parameterize the engine request.
To fit into our *fetch language* procedures the boilerplate is implemented in
the `searxng_extra/update/update_languages.py` and the *engine_properties* are
stored along in the `searx/data/engines_languages.json`.
This implementation is downward compatible to the `_fetch_fetch_languages()`
infrastructure we have. If there comes the day we have all
`_fetch_fetch_languages()` implementations moved to `_fetch_engine_properties()`
implementations, we can rename the files and scripts.
The new type `EngineProperties` is a dictionary with keys `languages` and
`regions`. The values are dictionaries to map from SearXNG's language & region
to option values the engine does use::
engine_properties = {
'type' : 'engine_properties', # <-- !!!
'regions': {
# 'ca-ES' : <engine's region name>
},
'languages': {
# 'ca' : <engine's language name>
},
}
Similar to the `supported_languages`, in the engine the properties are available
under the name `supported_properties`.
Initial we start with languages & regions, but in a wider sense the type is
named *engine properties*. Engines can store in whatever options they need and
may be in the future there is a need to fetch additional or complete different
properties.
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
|
||
|---|---|---|
| .. | ||
| answerers | ||
| data | ||
| engines | ||
| infopage | ||
| metrics | ||
| network | ||
| plugins | ||
| search | ||
| shared | ||
| static | ||
| templates/simple | ||
| translations | ||
| __init__.py | ||
| autocomplete.py | ||
| babel_extract.py | ||
| compat.py | ||
| exceptions.py | ||
| external_bang.py | ||
| external_urls.py | ||
| flaskfix.py | ||
| languages.py | ||
| locales.py | ||
| preferences.py | ||
| query.py | ||
| redislib.py | ||
| results.py | ||
| searxng.msg | ||
| settings.yml | ||
| settings_defaults.py | ||
| settings_loader.py | ||
| unixthreadname.py | ||
| utils.py | ||
| version.py | ||
| webadapter.py | ||
| webapp.py | ||
| webutils.py | ||