From 1626fa05854acf18bf57fd54fd31688a87182987 Mon Sep 17 00:00:00 2001
From: Ethan Dalool <git@voussoir.net>
Date: Mon, 24 Mar 2025 22:09:55 -0700
Subject: [PATCH] Fallback to zero duration if missing from API.

---
 ycdl/ytapi.py | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/ycdl/ytapi.py b/ycdl/ytapi.py
index 448e338..6580e1a 100644
--- a/ycdl/ytapi.py
+++ b/ycdl/ytapi.py
@@ -43,8 +43,11 @@ class Video:
             self.live_broadcast = None
         self.tags = snippet.get('tags', [])
 
-        # Something like 'PT10M25S'
-        self.duration = isodate.parse_duration(content_details['duration']).seconds
+        if 'duration' in content_details:
+            # Something like 'PT10M25S'
+            self.duration = isodate.parse_duration(content_details['duration']).seconds
+        else:
+            self.duration = 0
         self.views = int_none(statistics.get('viewCount', None))
         self.likes = int_none(statistics.get('likeCount', 0))
         self.dislikes = int_none(statistics.get('dislikeCount'))