mirror of
				https://github.com/ytdl-org/youtube-dl.git
				synced 2025-10-29 09:26:20 -07:00 
			
		
		
		
	[nationalgeographic] add support Adobe Pass auth
This commit is contained in:
		| @@ -1,6 +1,7 @@ | ||||
| from __future__ import unicode_literals | ||||
|  | ||||
| from .common import InfoExtractor | ||||
| from .theplatform import ThePlatformIE | ||||
| from ..utils import ( | ||||
|     smuggle_url, | ||||
|     url_basename, | ||||
| @@ -61,7 +62,7 @@ class NationalGeographicIE(InfoExtractor): | ||||
|         } | ||||
|  | ||||
|  | ||||
| class NationalGeographicChannelIE(InfoExtractor): | ||||
| class NationalGeographicChannelIE(ThePlatformIE): | ||||
|     IE_NAME = 'natgeo:channel' | ||||
|     _VALID_URL = r'https?://channel\.nationalgeographic\.com/(?:wild/)?[^/]+/videos/(?P<id>[^/?]+)' | ||||
|  | ||||
| @@ -102,12 +103,22 @@ class NationalGeographicChannelIE(InfoExtractor): | ||||
|         release_url = self._search_regex( | ||||
|             r'video_auth_playlist_url\s*=\s*"([^"]+)"', | ||||
|             webpage, 'release url') | ||||
|         query = { | ||||
|             'mbr': 'true', | ||||
|             'manifest': 'm3u', | ||||
|         } | ||||
|         is_auth = self._search_regex(r'video_is_auth\s*=\s*"([^"]+)"', webpage, 'is auth', fatal=False) | ||||
|         if is_auth == 'auth': | ||||
|             auth_resource_id = self._search_regex( | ||||
|                 r"video_auth_resourceId\s*=\s*'([^']+)'", | ||||
|                 webpage, 'auth resource id') | ||||
|             query['auth'] = self._extract_mvpd_auth(url, display_id, 'natgeo', auth_resource_id) or '' | ||||
|  | ||||
|         return { | ||||
|             '_type': 'url_transparent', | ||||
|             'ie_key': 'ThePlatform', | ||||
|             'url': smuggle_url( | ||||
|                 update_url_query(release_url, {'mbr': 'true', 'switch': 'http'}), | ||||
|                 update_url_query(release_url, query), | ||||
|                 {'force_smil_url': True}), | ||||
|             'display_id': display_id, | ||||
|         } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user