summaryrefslogtreecommitdiff
path: root/searx
diff options
context:
space:
mode:
authorjazzzooo <38244149+jazzzooo@users.noreply.github.com>2023-09-15 11:57:03 -0700
committerMarkus Heiser <markus.heiser@darmarIT.de>2023-09-15 22:00:09 +0200
commit27477f51fdd91bcea4282da462c2923070524e20 (patch)
tree2cb53470df1d2b3f7effffe9b9acda9c16ffb1e7 /searx
parent140125e6417381042c57bdbeaffb1c8de0364543 (diff)
downloadsearxng-27477f51fdd91bcea4282da462c2923070524e20.tar.gz
searxng-27477f51fdd91bcea4282da462c2923070524e20.zip
[fix] brave.news
Diffstat (limited to 'searx')
-rw-r--r--searx/engines/brave.py5
-rw-r--r--searx/utils.py4
2 files changed, 5 insertions, 4 deletions
diff --git a/searx/engines/brave.py b/searx/engines/brave.py
index f1fad6292..adac37d8d 100644
--- a/searx/engines/brave.py
+++ b/searx/engines/brave.py
@@ -219,8 +219,7 @@ def response(resp):
json_resp = json_data[1]['data']['body']['response']
if brave_category == 'news':
- json_resp = json_resp['news']
- return _parse_news(json_resp)
+ return _parse_news(json_resp['news'])
if brave_category == 'images':
return _parse_images(json_resp)
@@ -299,7 +298,7 @@ def _parse_news(json_resp):
'title': result['title'],
'content': result['description'],
}
- if result['thumbnail'] != "null":
+ if result['thumbnail'] is not None:
item['img_src'] = result['thumbnail']['src']
result_list.append(item)
diff --git a/searx/utils.py b/searx/utils.py
index 9457ca87d..458cef7ea 100644
--- a/searx/utils.py
+++ b/searx/utils.py
@@ -40,6 +40,7 @@ _ECMA_UNESCAPE2_RE = re.compile(r'%([0-9a-fA-F]{2})', re.UNICODE)
_JS_QUOTE_KEYS_RE = re.compile(r'([\{\s,])(\w+)(:)')
_JS_VOID_RE = re.compile(r'void\s+[0-9]+|void\s*\([0-9]+\)')
+_JS_DECIMAL_RE = re.compile(r":\s*\.")
_STORAGE_UNIT_VALUE: Dict[str, int] = {
'TB': 1024 * 1024 * 1024 * 1024,
@@ -699,7 +700,7 @@ def js_variable_to_python(js_variable):
# replace simple quote by double quote
parts[i] = '"'
in_string = None
- #
+
if not in_string:
# replace void 0 by null
# https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/void
@@ -714,6 +715,7 @@ def js_variable_to_python(js_variable):
# becomes
# { "a": 12 }
s = _JS_QUOTE_KEYS_RE.sub(r'\1"\2"\3', s)
+ s = _JS_DECIMAL_RE.sub(":0.", s)
# replace the surogate character by colon
s = s.replace(chr(1), ':')
# load the JSON and return the result