Browse Source

include length in invidious results

Michael Ilsaas 4 years ago
parent
commit
2ed8ad7691
1 changed files with 7 additions and 2 deletions
  1. 7 2
      searx/engines/invidious.py

+ 7 - 2
searx/engines/invidious.py

@@ -6,8 +6,7 @@
 # @using-api   yes
 # @results     JSON
 # @stable      yes
-# @parse       url, title, content, publishedDate, thumbnail, embedded
-# @parse       url, title, content, publishedDate, thumbnail, embedded, author
+# @parse       url, title, content, publishedDate, thumbnail, embedded, author, length
 
 from searx.url_utils import quote_plus
 from dateutil import parser
@@ -85,12 +84,18 @@ def response(resp):
             publishedDate = parser.parse(
                 time.ctime(result.get("published", 0))
             )
+            length = time.gmtime(result.get("lengthSeconds"))
+            if length.tm_hour:
+                length = time.strftime("%H:%M:%S", length)
+            else:
+                length = time.strftime("%M:%S", length)
 
             results.append(
                 {
                     "url": url,
                     "title": result.get("title", ""),
                     "content": result.get("description", ""),
+                    'length': length,
                     "template": "videos.html",
                     "author": result.get("author"),
                     "publishedDate": publishedDate,