mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-11-27 18:41:29 +00:00
twitch.tv chapters: Use API for title and other metadata
This commit is contained in:
parent
f4f316881d
commit
db8fd71ca9
|
@ -3368,10 +3368,6 @@ def _real_extract(self, url):
|
||||||
if not m:
|
if not m:
|
||||||
raise ExtractorError(u'Cannot find archive of a chapter')
|
raise ExtractorError(u'Cannot find archive of a chapter')
|
||||||
archive_id = m.group(1)
|
archive_id = m.group(1)
|
||||||
m = re.search(r"<h2 class='js-title'>([^<]*)</h2>", webpage)
|
|
||||||
if not m:
|
|
||||||
raise ExtractorError(u'Cannot find chapter title')
|
|
||||||
video_title = m.group(1)
|
|
||||||
|
|
||||||
api = api_base + '/broadcast/by_chapter/%s.xml' % chapter_id
|
api = api_base + '/broadcast/by_chapter/%s.xml' % chapter_id
|
||||||
chapter_info_xml = self._download_webpage(api, chapter_id,
|
chapter_info_xml = self._download_webpage(api, chapter_id,
|
||||||
|
@ -3387,6 +3383,12 @@ def _real_extract(self, url):
|
||||||
video_url = a.find('./video_file_url').text
|
video_url = a.find('./video_file_url').text
|
||||||
video_ext = video_url.rpartition('.')[2] or u'flv'
|
video_ext = video_url.rpartition('.')[2] or u'flv'
|
||||||
|
|
||||||
|
chapter_api_url = u'https://api.twitch.tv/kraken/videos/c' + chapter_id
|
||||||
|
chapter_info_json = self._download_webpage(chapter_api_url, video_id,
|
||||||
|
note='Downloading chapter metadata',
|
||||||
|
errnote='Download of chapter metadata failed')
|
||||||
|
chapter_info = json.loads(chapter_info_json)
|
||||||
|
|
||||||
# TODO determine start (and probably fix up file)
|
# TODO determine start (and probably fix up file)
|
||||||
# youtube-dl -v http://www.twitch.tv/firmbelief/c/1757457
|
# youtube-dl -v http://www.twitch.tv/firmbelief/c/1757457
|
||||||
#video_url += u'?start=' + a.find('./start_timestamp').text
|
#video_url += u'?start=' + a.find('./start_timestamp').text
|
||||||
|
@ -3396,7 +3398,9 @@ def _real_extract(self, url):
|
||||||
'id': u'c' + chapter_id,
|
'id': u'c' + chapter_id,
|
||||||
'url': video_url,
|
'url': video_url,
|
||||||
'ext': video_ext,
|
'ext': video_ext,
|
||||||
'title': video_title,
|
'title': chapter_info['title'],
|
||||||
|
'thumbnail': chapter_info['preview'],
|
||||||
|
'description': chapter_info['description'],
|
||||||
}
|
}
|
||||||
return [info]
|
return [info]
|
||||||
else:
|
else:
|
||||||
|
|
Loading…
Reference in a new issue