[fix] update_engine_traits.py: annas archive, bing-* and zlibrary engines

Github action Update data - update_engine_traits [1] had issues in annas
archive, bing-* and zlibrary engines:

    ./manage pyenv.cmd python ./searxng_extra/update/update_engine_traits.py

[1] https://github.com/searxng/searxng/actions/runs/12530827768/job/34953392587

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
This commit is contained in:
Markus Heiser 2024-12-29 09:55:39 +01:00 committed by Markus Heiser
parent 05c82d3201
commit af3f272b0b
3 changed files with 34 additions and 9 deletions

View file

@ -169,7 +169,7 @@ def fetch_traits(engine_traits: EngineTraits):
lang_map = {}
for x in eval_xpath_list(dom, "//form//input[@name='lang']"):
eng_lang = x.get("value")
if eng_lang in ('', '_empty', 'nl-BE', 'und'):
if eng_lang in ('', '_empty', 'nl-BE', 'und') or eng_lang.startswith('anti__'):
continue
try:
locale = babel.Locale.parse(lang_map.get(eng_lang, eng_lang), sep='-')
@ -186,10 +186,12 @@ def fetch_traits(engine_traits: EngineTraits):
engine_traits.languages[sxng_lang] = eng_lang
for x in eval_xpath_list(dom, "//form//input[@name='content']"):
engine_traits.custom['content'].append(x.get("value"))
if not x.get("value").startswith("anti__"):
engine_traits.custom['content'].append(x.get("value"))
for x in eval_xpath_list(dom, "//form//input[@name='ext']"):
engine_traits.custom['ext'].append(x.get("value"))
if not x.get("value").startswith("anti__"):
engine_traits.custom['ext'].append(x.get("value"))
for x in eval_xpath_list(dom, "//form//select[@name='sort']//option"):
engine_traits.custom['sort'].append(x.get("value"))