mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-11-15 12:53:18 +00:00
[adultswim] detect when video needs authentication
This commit is contained in:
parent
6f7893653c
commit
58cd7e173e
|
@ -41,7 +41,8 @@ class AdultSwimIE(InfoExtractor):
|
||||||
'id': 'rQxZvXQ4ROaSOqq-or2Mow',
|
'id': 'rQxZvXQ4ROaSOqq-or2Mow',
|
||||||
'title': 'Rick and Morty - Pilot',
|
'title': 'Rick and Morty - Pilot',
|
||||||
'description': "Rick moves in with his daughter's family and establishes himself as a bad influence on his grandson, Morty. "
|
'description': "Rick moves in with his daughter's family and establishes himself as a bad influence on his grandson, Morty. "
|
||||||
}
|
},
|
||||||
|
'skip': 'This video is only available for registered users',
|
||||||
}, {
|
}, {
|
||||||
'url': 'http://www.adultswim.com/videos/playlists/american-parenting/putting-francine-out-of-business/',
|
'url': 'http://www.adultswim.com/videos/playlists/american-parenting/putting-francine-out-of-business/',
|
||||||
'playlist': [
|
'playlist': [
|
||||||
|
@ -84,7 +85,10 @@ class AdultSwimIE(InfoExtractor):
|
||||||
def find_video_info(collection, slug):
|
def find_video_info(collection, slug):
|
||||||
for video in collection.get('videos'):
|
for video in collection.get('videos'):
|
||||||
if video.get('slug') == slug:
|
if video.get('slug') == slug:
|
||||||
return video
|
if video.get('auth'):
|
||||||
|
raise ExtractorError('This video is only available for registered users', expected=True)
|
||||||
|
else:
|
||||||
|
return video
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def find_collection_by_linkURL(collections, linkURL):
|
def find_collection_by_linkURL(collections, linkURL):
|
||||||
|
@ -97,7 +101,10 @@ def find_collection_containing_video(collections, slug):
|
||||||
for collection in collections:
|
for collection in collections:
|
||||||
for video in collection.get('videos'):
|
for video in collection.get('videos'):
|
||||||
if video.get('slug') == slug:
|
if video.get('slug') == slug:
|
||||||
return collection, video
|
if video.get('auth'):
|
||||||
|
raise ExtractorError('This video is only available for registered users', expected=True)
|
||||||
|
else:
|
||||||
|
return collection, video
|
||||||
return None, None
|
return None, None
|
||||||
|
|
||||||
def _real_extract(self, url):
|
def _real_extract(self, url):
|
||||||
|
@ -128,6 +135,8 @@ def _real_extract(self, url):
|
||||||
if video_info is None:
|
if video_info is None:
|
||||||
if bootstrapped_data.get('slugged_video', {}).get('slug') == episode_path:
|
if bootstrapped_data.get('slugged_video', {}).get('slug') == episode_path:
|
||||||
video_info = bootstrapped_data['slugged_video']
|
video_info = bootstrapped_data['slugged_video']
|
||||||
|
if video_info.get('auth'):
|
||||||
|
raise ExtractorError('This video is only available for registered users', expected=True)
|
||||||
else:
|
else:
|
||||||
raise ExtractorError('Unable to find video info')
|
raise ExtractorError('Unable to find video info')
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue