aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbashonly <bashonly@bashonly.com>2023-07-20 08:40:31 -0500
committerbashonly <bashonly@bashonly.com>2023-07-20 08:40:31 -0500
commitaf86873218c24c3859ccf575a87f2b00a73b49d0 (patch)
tree30f6082ab436720e8ef086b574518994e7c7fd91
parent75dc8e673b481a82d0688aeec30f6c65d82bb359 (diff)
downloadhypervideo-pre-af86873218c24c3859ccf575a87f2b00a73b49d0.tar.lz
hypervideo-pre-af86873218c24c3859ccf575a87f2b00a73b49d0.tar.xz
hypervideo-pre-af86873218c24c3859ccf575a87f2b00a73b49d0.zip
[utils] Improve `parse_duration`
Authored by: bashonly
-rw-r--r--test/test_utils.py2
-rw-r--r--yt_dlp/utils/_utils.py2
2 files changed, 3 insertions, 1 deletions
diff --git a/test/test_utils.py b/test/test_utils.py
index 768edfd0c..b36bc04c2 100644
--- a/test/test_utils.py
+++ b/test/test_utils.py
@@ -655,6 +655,8 @@ class TestUtil(unittest.TestCase):
self.assertEqual(parse_duration('P0Y0M0DT0H4M20.880S'), 260.88)
self.assertEqual(parse_duration('01:02:03:050'), 3723.05)
self.assertEqual(parse_duration('103:050'), 103.05)
+ self.assertEqual(parse_duration('1HR 3MIN'), 3780)
+ self.assertEqual(parse_duration('2hrs 3mins'), 7380)
def test_fix_xml_ampersands(self):
self.assertEqual(
diff --git a/yt_dlp/utils/_utils.py b/yt_dlp/utils/_utils.py
index 2e619f9ea..abae0f17e 100644
--- a/yt_dlp/utils/_utils.py
+++ b/yt_dlp/utils/_utils.py
@@ -2021,7 +2021,7 @@ def parse_duration(s):
)?
T)?
(?:
- (?P<hours>[0-9]+)\s*h(?:ours?)?,?\s*
+ (?P<hours>[0-9]+)\s*h(?:(?:ou)?rs?)?,?\s*
)?
(?:
(?P<mins>[0-9]+)\s*m(?:in(?:ute)?s?)?,?\s*