[pbs] Add support for flp frontlines (Closes #7369)
This commit is contained in:
		| @@ -8,6 +8,7 @@ from ..utils import ( | ||||
|     ExtractorError, | ||||
|     determine_ext, | ||||
|     int_or_none, | ||||
|     strip_jsonp, | ||||
|     unified_strdate, | ||||
|     US_RATINGS, | ||||
| ) | ||||
| @@ -191,6 +192,23 @@ class PBSIE(InfoExtractor): | ||||
|             if media_id: | ||||
|                 return media_id, presumptive_id, upload_date | ||||
|  | ||||
|             # Fronline video embedded via flp | ||||
|             video_id = self._search_regex( | ||||
|                 r'videoid\s*:\s*"([\d+a-z]{7,})"', webpage, 'videoid') | ||||
|             if video_id: | ||||
|                 # pkg_id calculation is reverse engineered from | ||||
|                 # http://www.pbs.org/wgbh/pages/frontline/js/flp2012.js | ||||
|                 prg_id = self._search_regex( | ||||
|                     r'videoid\s*:\s*"([\d+a-z]{7,})"', webpage, 'videoid')[7:] | ||||
|                 if 'q' in prg_id: | ||||
|                     prg_id = prg_id.split('q')[1] | ||||
|                 prg_id = int(prg_id, 16) | ||||
|                 getdir = self._download_json( | ||||
|                     'http://www.pbs.org/wgbh/pages/frontline/.json/getdir/getdir%d.json' % prg_id, | ||||
|                     presumptive_id, 'Downloading getdir JSON', | ||||
|                     transform_source=strip_jsonp) | ||||
|                 return getdir['mid'], presumptive_id, upload_date | ||||
|  | ||||
|             for iframe in re.findall(r'(?s)<iframe(.+?)></iframe>', webpage): | ||||
|                 url = self._search_regex( | ||||
|                     r'src=(["\'])(?P<url>.+?partnerplayer.+?)\1', iframe, | ||||
|   | ||||
		Reference in New Issue
	
	Block a user