summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorA Farzat <a@farzat.xyz>2025-10-08 12:39:50 +0300
committerA Farzat <a@farzat.xyz>2025-10-08 12:40:39 +0300
commit4372982119140dba5b132e09200b94c1b422a1dd (patch)
tree162cb7439fce5f41c546115ea0f56ab179c29add
parentc641e6f1948f683bf7b1fff08bce125cb64563df (diff)
downloadcsca5028-4372982119140dba5b132e09200b94c1b422a1dd.tar.gz
csca5028-4372982119140dba5b132e09200b94c1b422a1dd.zip
Change duration to int in VideoTuple
This allows data_analyser to use extractor functions instead of yt-dlp.
-rw-r--r--components/videos.py2
-rw-r--r--data_analyser/utils.py9
2 files changed, 7 insertions, 4 deletions
diff --git a/components/videos.py b/components/videos.py
index 31b5005..cbb7f66 100644
--- a/components/videos.py
+++ b/components/videos.py
@@ -12,7 +12,7 @@ class VideoTuple(NamedTuple):
thumbnail: str
summary: str
analysed: bool = False
- duration_string: str = ""
+ duration: int = -1
@classmethod
def from_rss_entry(cls, entry: Any) -> Self:
diff --git a/data_analyser/utils.py b/data_analyser/utils.py
index 115c216..95dc2fe 100644
--- a/data_analyser/utils.py
+++ b/data_analyser/utils.py
@@ -1,13 +1,16 @@
from components.subscriptions.main import Subscription
from components.subscriptions.typing import SubsDict
from components.videos import VideoTuple
-from components.ytdlp import obtain_vid_info
+from components.extractor.obtain_vid_info import obtain_vid_duration
from pymongo.collection import Collection
def analyse_video(vid_tuple: VideoTuple) -> VideoTuple:
- info = obtain_vid_info(vid_tuple.link)
- return vid_tuple._replace(analysed=True, duration_string=info["duration_string"])
+ try:
+ duration = obtain_vid_duration(vid_tuple.link)
+ except:
+ duration = -2
+ return vid_tuple._replace(analysed=True, duration=duration)
def analyse_subscription(sub: Subscription) -> bool:
updated = False