فهرست منبع

[pbs] Fix multi part videos extraction

Sergey M․ 9 سال پیش
والد
کامیت
6b3fbd3425
1فایلهای تغییر یافته به همراه8 افزوده شده و 4 حذف شده
  1. 8 4
      youtube_dl/extractor/pbs.py

+ 8 - 4
youtube_dl/extractor/pbs.py

@@ -366,10 +366,14 @@ class PBSIE(InfoExtractor):
                 webpage, 'upload date', default=None))
                 webpage, 'upload date', default=None))
 
 
             # tabbed frontline videos
             # tabbed frontline videos
-            tabbed_videos = re.findall(
-                r'<div[^>]+class="videotab[^"]*"[^>]+vid="(\d+)"', webpage)
-            if tabbed_videos:
-                return tabbed_videos, presumptive_id, upload_date
+            MULTI_PART_REGEXES = (
+                r'<div[^>]+class="videotab[^"]*"[^>]+vid="(\d+)"',
+                r'<a[^>]+href=["\']#video-\d+["\'][^>]+data-coveid=["\'](\d+)',
+            )
+            for p in MULTI_PART_REGEXES:
+                tabbed_videos = re.findall(p, webpage)
+                if tabbed_videos:
+                    return tabbed_videos, presumptive_id, upload_date
 
 
             MEDIA_ID_REGEXES = [
             MEDIA_ID_REGEXES = [
                 r"div\s*:\s*'videoembed'\s*,\s*mediaid\s*:\s*'(\d+)'",  # frontline video embed
                 r"div\s*:\s*'videoembed'\s*,\s*mediaid\s*:\s*'(\d+)'",  # frontline video embed