mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-11-10 09:07:58 +01:00
[Vlive] Fix playlist handling when downloading a channel
This commit is contained in:
parent
d052b9a112
commit
d02f12107f
1 changed files with 26 additions and 5 deletions
|
@ -300,13 +300,34 @@ def _real_extract(self, url):
|
||||||
|
|
||||||
for video in videos:
|
for video in videos:
|
||||||
video_id = video.get('videoSeq')
|
video_id = video.get('videoSeq')
|
||||||
if not video_id:
|
video_type = video.get('videoType')
|
||||||
|
|
||||||
|
if not video_id or not video_type:
|
||||||
continue
|
continue
|
||||||
video_id = compat_str(video_id)
|
video_id = compat_str(video_id)
|
||||||
entries.append(
|
|
||||||
self.url_result(
|
if video_type in ('PLAYLIST'):
|
||||||
'http://www.vlive.tv/video/%s' % video_id,
|
playlist_videos = try_get(
|
||||||
ie=VLiveIE.ie_key(), video_id=video_id))
|
video,
|
||||||
|
lambda x: x['videoPlaylist']['videoList'], list)
|
||||||
|
if not playlist_videos:
|
||||||
|
continue
|
||||||
|
|
||||||
|
for playlist_video in playlist_videos:
|
||||||
|
playlist_video_id = playlist_video.get('videoSeq')
|
||||||
|
if not playlist_video_id:
|
||||||
|
continue
|
||||||
|
playlist_video_id = compat_str(playlist_video_id)
|
||||||
|
|
||||||
|
entries.append(
|
||||||
|
self.url_result(
|
||||||
|
'http://www.vlive.tv/video/%s' % playlist_video_id,
|
||||||
|
ie=VLiveIE.ie_key(), video_id=playlist_video_id))
|
||||||
|
else:
|
||||||
|
entries.append(
|
||||||
|
self.url_result(
|
||||||
|
'http://www.vlive.tv/video/%s' % video_id,
|
||||||
|
ie=VLiveIE.ie_key(), video_id=video_id))
|
||||||
|
|
||||||
return self.playlist_result(
|
return self.playlist_result(
|
||||||
entries, channel_code, channel_name)
|
entries, channel_code, channel_name)
|
||||||
|
|
Loading…
Reference in a new issue