瀏覽代碼

[zype] fix uplynk id extraction(closes #27956)

Remita Amine 4 年之前
父節點
當前提交
57f2488bbe
共有 1 個文件被更改,包括 10 次插入5 次删除
  1. 10 5
      youtube_dl/extractor/zype.py

+ 10 - 5
youtube_dl/extractor/zype.py

@@ -87,11 +87,16 @@ class ZypeIE(InfoExtractor):
                 r'(["\'])(?P<url>(?:(?!\1).)+\.m3u8(?:(?!\1).)*)\1',
                 body, 'm3u8 url', group='url', default=None)
             if not m3u8_url:
-                source = self._parse_json(self._search_regex(
-                    r'(?s)sources\s*:\s*\[\s*({.+?})\s*\]', body,
-                    'source'), video_id, js_to_json)
-                if source.get('integration') == 'verizon-media':
-                    m3u8_url = 'https://content.uplynk.com/%s.m3u8' % source['id']
+                source = self._search_regex(
+                    r'(?s)sources\s*:\s*\[\s*({.+?})\s*\]', body, 'source')
+
+                def get_attr(key):
+                    return self._search_regex(
+                        r'\b%s\s*:\s*([\'"])(?P<val>(?:(?!\1).)+)\1' % key,
+                        source, key, group='val')
+
+                if get_attr('integration') == 'verizon-media':
+                    m3u8_url = 'https://content.uplynk.com/%s.m3u8' % get_attr('id')
             formats = self._extract_m3u8_formats(
                 m3u8_url, video_id, 'mp4', 'm3u8_native', m3u8_id='hls')
             text_tracks = self._search_regex(