summaryrefslogtreecommitdiff
path: root/searx/engines
diff options
context:
space:
mode:
authorBnyro <bnyro@tutanota.com>2024-07-20 21:27:12 +0200
committerMarkus Heiser <markus.heiser@darmarIT.de>2024-07-27 11:49:58 +0200
commit304ddd8114e12f4fdd5057dc933a2981bd9e1ec7 (patch)
tree036c00c01e08e1dd1eb1a6ee136f88d8d5871848 /searx/engines
parent3f22dbb68ab1b1effa84048e15651c5b2e6aa160 (diff)
[feat] videos template: support for view count
Diffstat (limited to 'searx/engines')
-rw-r--r--searx/engines/invidious.py5
-rw-r--r--searx/engines/peertube.py3
-rw-r--r--searx/engines/piped.py3
3 files changed, 9 insertions, 2 deletions
diff --git a/searx/engines/invidious.py b/searx/engines/invidious.py
index 49f90cc09..540f89a2f 100644
--- a/searx/engines/invidious.py
+++ b/searx/engines/invidious.py
@@ -7,6 +7,8 @@ import random
from urllib.parse import quote_plus, urlparse
from dateutil import parser
+from searx.utils import humanize_number
+
# about
about = {
"website": 'https://api.invidious.io/',
@@ -91,7 +93,8 @@ def response(resp):
"url": url,
"title": result.get("title", ""),
"content": result.get("description", ""),
- 'length': length,
+ "length": length,
+ "views": humanize_number(result['viewCount']),
"template": "videos.html",
"author": result.get("author"),
"publishedDate": publishedDate,
diff --git a/searx/engines/peertube.py b/searx/engines/peertube.py
index 114e24c4f..0457c5d8d 100644
--- a/searx/engines/peertube.py
+++ b/searx/engines/peertube.py
@@ -14,7 +14,7 @@ import babel
from searx.network import get # see https://github.com/searxng/searxng/issues/762
from searx.locales import language_tag
-from searx.utils import html_to_text
+from searx.utils import html_to_text, humanize_number
from searx.enginelib.traits import EngineTraits
traits: EngineTraits
@@ -124,6 +124,7 @@ def video_response(resp):
'content': html_to_text(result.get('description') or ''),
'author': result.get('account', {}).get('displayName'),
'length': minute_to_hm(result.get('duration')),
+ 'views': humanize_number(result['views']),
'template': 'videos.html',
'publishedDate': parse(result['publishedAt']),
'iframe_src': result.get('embedUrl'),
diff --git a/searx/engines/piped.py b/searx/engines/piped.py
index 5b60dec5a..0b7199437 100644
--- a/searx/engines/piped.py
+++ b/searx/engines/piped.py
@@ -53,6 +53,8 @@ from urllib.parse import urlencode
import datetime
from dateutil import parser
+from searx.utils import humanize_number
+
# about
about = {
"website": 'https://github.com/TeamPiped/Piped/',
@@ -138,6 +140,7 @@ def response(resp):
"title": result.get("title", ""),
"publishedDate": parser.parse(time.ctime(uploaded / 1000)) if uploaded != -1 else None,
"iframe_src": _frontend_url() + '/embed' + result.get("url", ""),
+ "views": humanize_number(result["views"]),
}
length = result.get("duration")
if length: