mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2026-04-27 02:55:54 +00:00
[ie/rutube] Use subs_list_to_dict
This commit is contained in:
parent
fb4f5dd135
commit
984f9233c4
@ -3767,7 +3767,7 @@ class InfoExtractor:
|
|||||||
""" Merge subtitle dictionaries, language by language. """
|
""" Merge subtitle dictionaries, language by language. """
|
||||||
if target is None:
|
if target is None:
|
||||||
target = {}
|
target = {}
|
||||||
for d in dicts:
|
for d in filter(None, dicts):
|
||||||
for lang, subs in d.items():
|
for lang, subs in d.items():
|
||||||
target[lang] = cls._merge_subtitle_items(target.get(lang, []), subs)
|
target[lang] = cls._merge_subtitle_items(target.get(lang, []), subs)
|
||||||
return target
|
return target
|
||||||
|
|||||||
@ -13,7 +13,10 @@ from ..utils import (
|
|||||||
unified_timestamp,
|
unified_timestamp,
|
||||||
url_or_none,
|
url_or_none,
|
||||||
)
|
)
|
||||||
from ..utils.traversal import traverse_obj
|
from ..utils.traversal import (
|
||||||
|
subs_list_to_dict,
|
||||||
|
traverse_obj,
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
class RutubeBaseIE(InfoExtractor):
|
class RutubeBaseIE(InfoExtractor):
|
||||||
@ -92,11 +95,11 @@ class RutubeBaseIE(InfoExtractor):
|
|||||||
hls_url, video_id, 'mp4', fatal=False, m3u8_id='hls')
|
hls_url, video_id, 'mp4', fatal=False, m3u8_id='hls')
|
||||||
formats.extend(fmts)
|
formats.extend(fmts)
|
||||||
self._merge_subtitles(subs, target=subtitles)
|
self._merge_subtitles(subs, target=subtitles)
|
||||||
for caption in traverse_obj(options, ('captions', lambda _, v: url_or_none(v['file']))):
|
self._merge_subtitles(traverse_obj(options, ('captions', ..., {
|
||||||
subtitles.setdefault(caption.get('code') or 'ru', []).append({
|
'id': 'code',
|
||||||
'url': caption['file'],
|
'url': 'file',
|
||||||
'name': caption.get('langTitle'),
|
'name': ('langTitle', {str}),
|
||||||
})
|
}, all, {subs_list_to_dict(lang='ru')})), target=subtitles)
|
||||||
return formats, subtitles
|
return formats, subtitles
|
||||||
|
|
||||||
def _download_and_extract_formats_and_subtitles(self, video_id, query=None):
|
def _download_and_extract_formats_and_subtitles(self, video_id, query=None):
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user