From 1d16b94279b252bb2e298a2afffb9561d8b5bd85 Mon Sep 17 00:00:00 2001 From: Markus Heiser Date: Sat, 1 Mar 2025 10:49:11 +0100 Subject: [fix] wikidata: increase wikidata queries timeout The big queries for initializing and updating the currencies take longer than the default of the wikidata engine, which is only 3sec. Signed-off-by: Markus Heiser --- searx/engines/wikidata.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'searx/engines/wikidata.py') diff --git a/searx/engines/wikidata.py b/searx/engines/wikidata.py index e411ecf54..5b5764d20 100644 --- a/searx/engines/wikidata.py +++ b/searx/engines/wikidata.py @@ -158,13 +158,13 @@ def get_label_for_entity(entity_id, language): return name -def send_wikidata_query(query, method='GET'): +def send_wikidata_query(query, method='GET', **kwargs): if method == 'GET': # query will be cached by wikidata - http_response = get(SPARQL_ENDPOINT_URL + '?' + urlencode({'query': query}), headers=get_headers()) + http_response = get(SPARQL_ENDPOINT_URL + '?' + urlencode({'query': query}), headers=get_headers(), **kwargs) else: # query won't be cached by wikidata - http_response = post(SPARQL_ENDPOINT_URL, data={'query': query}, headers=get_headers()) + http_response = post(SPARQL_ENDPOINT_URL, data={'query': query}, headers=get_headers(), **kwargs) if http_response.status_code != 200: logger.debug('SPARQL endpoint error %s', http_response.content.decode()) logger.debug('request time %s', str(http_response.elapsed)) @@ -808,7 +808,7 @@ def init(engine_settings=None): # pylint: disable=unused-argument if attribute.name not in WIKIDATA_PROPERTIES: wikidata_property_names.append("wd:" + attribute.name) query = QUERY_PROPERTY_NAMES.replace('%ATTRIBUTES%', " ".join(wikidata_property_names)) - jsonresponse = send_wikidata_query(query) + jsonresponse = send_wikidata_query(query, timeout=20) for result in jsonresponse.get('results', {}).get('bindings', {}): name = result['name']['value'] lang = result['name']['xml:lang'] -- cgit v1.2.3