summary refs log tree commit diff
diff options
context:
space:
mode:
authorRemita Amine <remitamine@gmail.com>2018-05-26 14:35:47 +0100
committerRemita Amine <remitamine@gmail.com>2018-05-26 14:38:24 +0100
commit261f47306c594614edb8a5f0b8f5f3b8a87ce9c0 (patch)
treef85a03d45275eed036f78f2d0d6a9d262d6b2f07
parentc0fd20abcad16bb2e377b6342a894a374c219763 (diff)
downloadyoutube-dl-261f47306c594614edb8a5f0b8f5f3b8a87ce9c0.tar.gz
youtube-dl-261f47306c594614edb8a5f0b8f5f3b8a87ce9c0.tar.xz
youtube-dl-261f47306c594614edb8a5f0b8f5f3b8a87ce9c0.zip
[utils] fix style id extraction for namespaced id attribute(closes #16551)
-rw-r--r--youtube_dl/utils.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/youtube_dl/utils.py b/youtube_dl/utils.py
index 7b4fd882f..63f24c0b6 100644
--- a/youtube_dl/utils.py
+++ b/youtube_dl/utils.py
@@ -2667,6 +2667,7 @@ def dfxp2srt(dfxp_data):
     ]
 
     _x = functools.partial(xpath_with_ns, ns_map={
+        'xml': 'http://www.w3.org/XML/1998/namespace',
         'ttml': 'http://www.w3.org/ns/ttml',
         'tts': 'http://www.w3.org/ns/ttml#styling',
     })
@@ -2758,7 +2759,9 @@ def dfxp2srt(dfxp_data):
     repeat = False
     while True:
         for style in dfxp.findall(_x('.//ttml:style')):
-            style_id = style.get('id')
+            style_id = style.get('id') or style.get(_x('xml:id'))
+            if not style_id:
+                continue
             parent_style_id = style.get('style')
             if parent_style_id:
                 if parent_style_id not in styles: