[twitch] Determine ids from URLs when extracting playlist
This allows videos to be filtered using download_archive without needing to fetch the info JSON for each video.
This commit is contained in:
parent
d7cd9a9e84
commit
e129469557
@ -358,9 +358,17 @@ class TwitchPlaylistBaseIE(TwitchBaseIE):
|
|||||||
break
|
break
|
||||||
offset += limit
|
offset += limit
|
||||||
return self.playlist_result(
|
return self.playlist_result(
|
||||||
[self.url_result(entry) for entry in orderedSet(entries)],
|
[self._make_url_result(entry) for entry in orderedSet(entries)],
|
||||||
channel_id, channel_name)
|
channel_id, channel_name)
|
||||||
|
|
||||||
|
def _make_url_result(self, url):
|
||||||
|
try:
|
||||||
|
video_id = 'v%s' % TwitchVodIE._match_id(url)
|
||||||
|
return self.url_result(url, TwitchVodIE.ie_key(), video_id=video_id)
|
||||||
|
except AssertionError:
|
||||||
|
self.to_screen('Unable to match video ID from URL: %s' % url)
|
||||||
|
return self.url_result(url)
|
||||||
|
|
||||||
def _extract_playlist_page(self, response):
|
def _extract_playlist_page(self, response):
|
||||||
videos = response.get('videos')
|
videos = response.get('videos')
|
||||||
return [video['url'] for video in videos] if videos else []
|
return [video['url'] for video in videos] if videos else []
|
||||||
|
Loading…
x
Reference in New Issue
Block a user