mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-11-23 09:01:43 +00:00
parent
d16df59db5
commit
85553414ae
@ -1447,7 +1447,7 @@ def extract_chapter_information(e):
|
|||||||
'title': part.get('name'),
|
'title': part.get('name'),
|
||||||
'start_time': part.get('startOffset'),
|
'start_time': part.get('startOffset'),
|
||||||
'end_time': part.get('endOffset'),
|
'end_time': part.get('endOffset'),
|
||||||
} for part in e.get('hasPart', []) if part.get('@type') == 'Clip']
|
} for part in variadic(e.get('hasPart') or []) if part.get('@type') == 'Clip']
|
||||||
for idx, (last_c, current_c, next_c) in enumerate(zip(
|
for idx, (last_c, current_c, next_c) in enumerate(zip(
|
||||||
[{'end_time': 0}] + chapters, chapters, chapters[1:])):
|
[{'end_time': 0}] + chapters, chapters, chapters[1:])):
|
||||||
current_c['end_time'] = current_c['end_time'] or next_c['start_time']
|
current_c['end_time'] = current_c['end_time'] or next_c['start_time']
|
||||||
|
@ -3815,13 +3815,16 @@ def _real_extract(self, url):
|
|||||||
|
|
||||||
# Looking for http://schema.org/VideoObject
|
# Looking for http://schema.org/VideoObject
|
||||||
json_ld = self._search_json_ld(webpage, video_id, default={})
|
json_ld = self._search_json_ld(webpage, video_id, default={})
|
||||||
if json_ld.get('url'):
|
if json_ld.get('url') not in (url, None):
|
||||||
self.report_detected('JSON LD')
|
self.report_detected('JSON LD')
|
||||||
if determine_ext(json_ld.get('url')) == 'm3u8':
|
if determine_ext(json_ld['url']) == 'm3u8':
|
||||||
json_ld['formats'], json_ld['subtitles'] = self._extract_m3u8_formats_and_subtitles(
|
json_ld['formats'], json_ld['subtitles'] = self._extract_m3u8_formats_and_subtitles(
|
||||||
json_ld['url'], video_id, 'mp4')
|
json_ld['url'], video_id, 'mp4')
|
||||||
json_ld.pop('url')
|
json_ld.pop('url')
|
||||||
self._sort_formats(json_ld['formats'])
|
self._sort_formats(json_ld['formats'])
|
||||||
|
else:
|
||||||
|
json_ld['_type'] = 'url_transparent'
|
||||||
|
json_ld['url'] = smuggle_url(json_ld['url'], {'force_videoid': video_id, 'to_generic': True})
|
||||||
return merge_dicts(json_ld, info_dict)
|
return merge_dicts(json_ld, info_dict)
|
||||||
|
|
||||||
def check_video(vurl):
|
def check_video(vurl):
|
||||||
|
Loading…
Reference in New Issue
Block a user