From 8fabaf86b68b1addd50114b6d42081c9b228edbb Mon Sep 17 00:00:00 2001 From: Markus Heiser Date: Sun, 19 Apr 2026 09:35:13 +0200 Subject: [PATCH] [fix] engine: wikidata - initialization fails with KeyError (#5993) The response to QUERY_PROPERTY_NAMES has changed; fields without the `name` field are now also returned. Closes: https://github.com/searxng/searxng/issues/5982 Signed-off-by: Markus Heiser --- searx/engines/wikidata.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/searx/engines/wikidata.py b/searx/engines/wikidata.py index a8169d9ec..c2804fb5e 100644 --- a/searx/engines/wikidata.py +++ b/searx/engines/wikidata.py @@ -802,8 +802,11 @@ def init(engine_settings=None): # pylint: disable=unused-argument query = QUERY_PROPERTY_NAMES.replace('%ATTRIBUTES%', " ".join(wikidata_property_names)) jsonresponse = send_wikidata_query(query, timeout=20) for result in jsonresponse.get('results', {}).get('bindings', {}): - name = result['name']['value'] - lang = result['name']['xml:lang'] + name_field = result.get("name") + if not name_field: + continue + name = name_field["value"] + lang = name_field["xml:lang"] entity_id = result['item']['value'].replace('http://www.wikidata.org/entity/', '') WIKIDATA_PROPERTIES[(entity_id, lang)] = name.capitalize()