From 203f1f0928c5d08410d552afabc3e3eb7e861747 Mon Sep 17 00:00:00 2001 From: Markus Heiser Date: Thu, 3 Aug 2023 12:03:11 +0200 Subject: [PATCH] [fix] engine piped: 'invalid content' SearXNG does not allow a None value in the content field of a result item. If the key (shortDescription, uploaderName) in the JSON response from piped exists but is set to None, SearXNG ignores this result item:: DEBUG searx : result: invalid content: { .., 'content': None, ..} Signed-off-by: Markus Heiser --- searx/engines/piped.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/searx/engines/piped.py b/searx/engines/piped.py index af1cba379..2bfb90656 100644 --- a/searx/engines/piped.py +++ b/searx/engines/piped.py @@ -142,13 +142,14 @@ def response(resp): if piped_filter == 'videos': item["template"] = "videos.html" - item["content"] = result.get("shortDescription", "") + # if the value of shortDescription set, but is None, return empty string + item["content"] = result.get("shortDescription", "") or "" item["thumbnail"] = result.get("thumbnail", "") elif piped_filter == 'music_songs': item["template"] = "default.html" item["img_src"] = result.get("thumbnail", "") - item["content"] = result.get("uploaderName", "") + item["content"] = result.get("uploaderName", "") or "" length = result.get("duration") if length: item["length"] = datetime.timedelta(seconds=length)