Fix preview_thumbnails
use 'deep_get' for storyboard
This commit is contained in:
parent
263469cd30
commit
1fbc0cdd46
@ -521,19 +521,19 @@ def get_storyboard_vtt():
|
||||
"""
|
||||
|
||||
spec_url = request.args.get('spec_url')
|
||||
url, *l = spec_url.split('|')
|
||||
url1, q = url.split('?')
|
||||
q = parse_qs(q)
|
||||
url, *boards = spec_url.split('|')
|
||||
base_url, q = url.split('?')
|
||||
q = parse_qs(q) # for url query
|
||||
|
||||
storyboard = None
|
||||
wanted_height = 90
|
||||
|
||||
for i, board in enumerate(l):
|
||||
for i, board in enumerate(boards):
|
||||
*t, _, sigh = board.split("#")
|
||||
width, height, count, width_cnt, height_cnt, interval = map(int, t)
|
||||
if height != wanted_height: continue
|
||||
q['sigh'] = [sigh]
|
||||
url = f"{url1}?{urlencode(q, doseq=True)}"
|
||||
url = f"{base_url}?{urlencode(q, doseq=True)}"
|
||||
storyboard = SimpleNamespace(
|
||||
url = url.replace("$L", str(i)).replace("$N", "M$M"),
|
||||
width = width,
|
||||
@ -553,8 +553,8 @@ def get_storyboard_vtt():
|
||||
m, s = divmod(s, 60)
|
||||
return f"{h:02}:{m:02}:{s:02}.{ms:03}"
|
||||
|
||||
r = "WEBVTT"
|
||||
ts = 0
|
||||
r = "WEBVTT" # result
|
||||
ts = 0 # current timestamp
|
||||
|
||||
for i in range(storyboard.storyboard_count):
|
||||
url = '/' + storyboard.url.replace("$M", str(i))
|
||||
|
@ -669,8 +669,7 @@ def extract_watch_info(polymer_json):
|
||||
|
||||
# other stuff
|
||||
info['author_url'] = 'https://www.youtube.com/channel/' + info['author_id'] if info['author_id'] else None
|
||||
sb = player_response.get('storyboards')
|
||||
info['storyboard_spec_url'] = sb['playerStoryboardSpecRenderer']['spec'] if sb else None
|
||||
info['storyboard_spec_url'] = deep_get(player_response, 'storyboards', 'playerStoryboardSpecRenderer', 'spec')
|
||||
|
||||
return info
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user