[cda] fix premium videos for premium users (?)
This commit is contained in:
parent
baf8549c0a
commit
557fe650bb
|
@ -126,9 +126,6 @@ class CDAIE(CDABaseExtractor):
|
||||||
metadata = self._download_json(
|
metadata = self._download_json(
|
||||||
self._BASE_URL + '/video/' + video_id, video_id, headers=headers)['video']
|
self._BASE_URL + '/video/' + video_id, video_id, headers=headers)['video']
|
||||||
|
|
||||||
if metadata.get('premium') is True and metadata.get('premium_free') is not True:
|
|
||||||
raise ExtractorError('This video is only available for premium users.', expected=True)
|
|
||||||
|
|
||||||
uploader = try_get(metadata, lambda x: x['author']['login'])
|
uploader = try_get(metadata, lambda x: x['author']['login'])
|
||||||
# anonymous uploader
|
# anonymous uploader
|
||||||
if uploader == 'anonim':
|
if uploader == 'anonim':
|
||||||
|
@ -136,6 +133,8 @@ class CDAIE(CDABaseExtractor):
|
||||||
|
|
||||||
formats = []
|
formats = []
|
||||||
for quality in metadata['qualities']:
|
for quality in metadata['qualities']:
|
||||||
|
if not quality['file']:
|
||||||
|
continue
|
||||||
formats.append({
|
formats.append({
|
||||||
'url': quality['file'],
|
'url': quality['file'],
|
||||||
'format': quality['title'],
|
'format': quality['title'],
|
||||||
|
@ -144,6 +143,13 @@ class CDAIE(CDABaseExtractor):
|
||||||
'filesize': quality.get('length'),
|
'filesize': quality.get('length'),
|
||||||
})
|
})
|
||||||
|
|
||||||
|
if not formats:
|
||||||
|
if metadata.get('premium') is True and metadata.get('premium_free') is not True:
|
||||||
|
raise ExtractorError('This video is only available for premium users.', expected=True)
|
||||||
|
raise ExtractorError('No video qualities found', video_id=video_id)
|
||||||
|
|
||||||
|
self._sort_formats(formats)
|
||||||
|
|
||||||
return {
|
return {
|
||||||
'id': video_id,
|
'id': video_id,
|
||||||
'title': metadata['title'],
|
'title': metadata['title'],
|
||||||
|
|
Loading…
Reference in a new issue