Module hdrezka.post.urls.kind.subtitle
Subtitles module
Classes
class SubtitleURL (url: str, name: str, code: str)-
Expand source code
class SubtitleURL(NamedTuple): """ url: str .vtt file url Language attributes: name: str code: str """ url: str name: str code: strurl: str .vtt file url
Language attributes: name: str code: str
Ancestors
- builtins.tuple
Instance variables
var code : str-
Expand source code
class SubtitleURL(NamedTuple): """ url: str .vtt file url Language attributes: name: str code: str """ url: str name: str code: strAlias for field number 2
var name : str-
Expand source code
class SubtitleURL(NamedTuple): """ url: str .vtt file url Language attributes: name: str code: str """ url: str name: str code: strAlias for field number 1
var url : str-
Expand source code
class SubtitleURL(NamedTuple): """ url: str .vtt file url Language attributes: name: str code: str """ url: str name: str code: strAlias for field number 0
class SubtitleURLs (subtitle: str, subtitle_lns: dict[str, str], subtitle_def: str)-
Expand source code
class SubtitleURLs: """Class representing subtitle urls""" __slots__ = ('subtitles', 'has_subtitles', 'subtitle_names', 'subtitle_codes', 'default') def __init__(self, subtitle: str, subtitle_lns: dict[str, str], subtitle_def: str): """ :param subtitle: is subtitles exists :param subtitle_lns: languages {code: name, ...} :param subtitle_def: default subtitle code """ self.has_subtitles = not not subtitle off = SubtitleURL('', '', 'off'), if self.has_subtitles: self.subtitles: tuple[SubtitleURL, ...] = *( SubtitleURL(url, name, subtitle_lns[name]) for name, url in (v.removeprefix('[').split(']', 1) for v in subtitle.split(','))), self.subtitles += off else: self.subtitles = off self.subtitle_names = {} self.subtitle_codes = {} for subtitle_item in self.subtitles: self.subtitle_names[subtitle_item.name] = self.subtitle_codes[subtitle_item.code] = subtitle_item self.default: SubtitleURL | None = self.subtitle_codes.get(subtitle_def) def __getitem__(self, item: str) -> SubtitleURL: """Returns subtitle by name or code""" if item in self.subtitle_names: return self.subtitle_names[item] return self.subtitle_codes[item] def get(self, item: str) -> SubtitleURL | None: """Returns subtitle by name or code, if not found returns None""" if not self.has_subtitles: return None return self.subtitle_names.get(item) or self.subtitle_codes.get(item) def __getattr__(self, item: str) -> SubtitleURL: """Returns subtitle by code""" return self.subtitle_codes[item] def __bool__(self): """Is subtitles exists""" return self.has_subtitles def __repr__(self): return f'{self.__class__.__qualname__}<{self.subtitles!r}>'Class representing subtitle urls
:param subtitle: is subtitles exists :param subtitle_lns: languages {code: name, …} :param subtitle_def: default subtitle code
Instance variables
var default-
Expand source code
class SubtitleURLs: """Class representing subtitle urls""" __slots__ = ('subtitles', 'has_subtitles', 'subtitle_names', 'subtitle_codes', 'default') def __init__(self, subtitle: str, subtitle_lns: dict[str, str], subtitle_def: str): """ :param subtitle: is subtitles exists :param subtitle_lns: languages {code: name, ...} :param subtitle_def: default subtitle code """ self.has_subtitles = not not subtitle off = SubtitleURL('', '', 'off'), if self.has_subtitles: self.subtitles: tuple[SubtitleURL, ...] = *( SubtitleURL(url, name, subtitle_lns[name]) for name, url in (v.removeprefix('[').split(']', 1) for v in subtitle.split(','))), self.subtitles += off else: self.subtitles = off self.subtitle_names = {} self.subtitle_codes = {} for subtitle_item in self.subtitles: self.subtitle_names[subtitle_item.name] = self.subtitle_codes[subtitle_item.code] = subtitle_item self.default: SubtitleURL | None = self.subtitle_codes.get(subtitle_def) def __getitem__(self, item: str) -> SubtitleURL: """Returns subtitle by name or code""" if item in self.subtitle_names: return self.subtitle_names[item] return self.subtitle_codes[item] def get(self, item: str) -> SubtitleURL | None: """Returns subtitle by name or code, if not found returns None""" if not self.has_subtitles: return None return self.subtitle_names.get(item) or self.subtitle_codes.get(item) def __getattr__(self, item: str) -> SubtitleURL: """Returns subtitle by code""" return self.subtitle_codes[item] def __bool__(self): """Is subtitles exists""" return self.has_subtitles def __repr__(self): return f'{self.__class__.__qualname__}<{self.subtitles!r}>' var has_subtitles-
Expand source code
class SubtitleURLs: """Class representing subtitle urls""" __slots__ = ('subtitles', 'has_subtitles', 'subtitle_names', 'subtitle_codes', 'default') def __init__(self, subtitle: str, subtitle_lns: dict[str, str], subtitle_def: str): """ :param subtitle: is subtitles exists :param subtitle_lns: languages {code: name, ...} :param subtitle_def: default subtitle code """ self.has_subtitles = not not subtitle off = SubtitleURL('', '', 'off'), if self.has_subtitles: self.subtitles: tuple[SubtitleURL, ...] = *( SubtitleURL(url, name, subtitle_lns[name]) for name, url in (v.removeprefix('[').split(']', 1) for v in subtitle.split(','))), self.subtitles += off else: self.subtitles = off self.subtitle_names = {} self.subtitle_codes = {} for subtitle_item in self.subtitles: self.subtitle_names[subtitle_item.name] = self.subtitle_codes[subtitle_item.code] = subtitle_item self.default: SubtitleURL | None = self.subtitle_codes.get(subtitle_def) def __getitem__(self, item: str) -> SubtitleURL: """Returns subtitle by name or code""" if item in self.subtitle_names: return self.subtitle_names[item] return self.subtitle_codes[item] def get(self, item: str) -> SubtitleURL | None: """Returns subtitle by name or code, if not found returns None""" if not self.has_subtitles: return None return self.subtitle_names.get(item) or self.subtitle_codes.get(item) def __getattr__(self, item: str) -> SubtitleURL: """Returns subtitle by code""" return self.subtitle_codes[item] def __bool__(self): """Is subtitles exists""" return self.has_subtitles def __repr__(self): return f'{self.__class__.__qualname__}<{self.subtitles!r}>' var subtitle_codes-
Expand source code
class SubtitleURLs: """Class representing subtitle urls""" __slots__ = ('subtitles', 'has_subtitles', 'subtitle_names', 'subtitle_codes', 'default') def __init__(self, subtitle: str, subtitle_lns: dict[str, str], subtitle_def: str): """ :param subtitle: is subtitles exists :param subtitle_lns: languages {code: name, ...} :param subtitle_def: default subtitle code """ self.has_subtitles = not not subtitle off = SubtitleURL('', '', 'off'), if self.has_subtitles: self.subtitles: tuple[SubtitleURL, ...] = *( SubtitleURL(url, name, subtitle_lns[name]) for name, url in (v.removeprefix('[').split(']', 1) for v in subtitle.split(','))), self.subtitles += off else: self.subtitles = off self.subtitle_names = {} self.subtitle_codes = {} for subtitle_item in self.subtitles: self.subtitle_names[subtitle_item.name] = self.subtitle_codes[subtitle_item.code] = subtitle_item self.default: SubtitleURL | None = self.subtitle_codes.get(subtitle_def) def __getitem__(self, item: str) -> SubtitleURL: """Returns subtitle by name or code""" if item in self.subtitle_names: return self.subtitle_names[item] return self.subtitle_codes[item] def get(self, item: str) -> SubtitleURL | None: """Returns subtitle by name or code, if not found returns None""" if not self.has_subtitles: return None return self.subtitle_names.get(item) or self.subtitle_codes.get(item) def __getattr__(self, item: str) -> SubtitleURL: """Returns subtitle by code""" return self.subtitle_codes[item] def __bool__(self): """Is subtitles exists""" return self.has_subtitles def __repr__(self): return f'{self.__class__.__qualname__}<{self.subtitles!r}>' var subtitle_names-
Expand source code
class SubtitleURLs: """Class representing subtitle urls""" __slots__ = ('subtitles', 'has_subtitles', 'subtitle_names', 'subtitle_codes', 'default') def __init__(self, subtitle: str, subtitle_lns: dict[str, str], subtitle_def: str): """ :param subtitle: is subtitles exists :param subtitle_lns: languages {code: name, ...} :param subtitle_def: default subtitle code """ self.has_subtitles = not not subtitle off = SubtitleURL('', '', 'off'), if self.has_subtitles: self.subtitles: tuple[SubtitleURL, ...] = *( SubtitleURL(url, name, subtitle_lns[name]) for name, url in (v.removeprefix('[').split(']', 1) for v in subtitle.split(','))), self.subtitles += off else: self.subtitles = off self.subtitle_names = {} self.subtitle_codes = {} for subtitle_item in self.subtitles: self.subtitle_names[subtitle_item.name] = self.subtitle_codes[subtitle_item.code] = subtitle_item self.default: SubtitleURL | None = self.subtitle_codes.get(subtitle_def) def __getitem__(self, item: str) -> SubtitleURL: """Returns subtitle by name or code""" if item in self.subtitle_names: return self.subtitle_names[item] return self.subtitle_codes[item] def get(self, item: str) -> SubtitleURL | None: """Returns subtitle by name or code, if not found returns None""" if not self.has_subtitles: return None return self.subtitle_names.get(item) or self.subtitle_codes.get(item) def __getattr__(self, item: str) -> SubtitleURL: """Returns subtitle by code""" return self.subtitle_codes[item] def __bool__(self): """Is subtitles exists""" return self.has_subtitles def __repr__(self): return f'{self.__class__.__qualname__}<{self.subtitles!r}>' var subtitles-
Expand source code
class SubtitleURLs: """Class representing subtitle urls""" __slots__ = ('subtitles', 'has_subtitles', 'subtitle_names', 'subtitle_codes', 'default') def __init__(self, subtitle: str, subtitle_lns: dict[str, str], subtitle_def: str): """ :param subtitle: is subtitles exists :param subtitle_lns: languages {code: name, ...} :param subtitle_def: default subtitle code """ self.has_subtitles = not not subtitle off = SubtitleURL('', '', 'off'), if self.has_subtitles: self.subtitles: tuple[SubtitleURL, ...] = *( SubtitleURL(url, name, subtitle_lns[name]) for name, url in (v.removeprefix('[').split(']', 1) for v in subtitle.split(','))), self.subtitles += off else: self.subtitles = off self.subtitle_names = {} self.subtitle_codes = {} for subtitle_item in self.subtitles: self.subtitle_names[subtitle_item.name] = self.subtitle_codes[subtitle_item.code] = subtitle_item self.default: SubtitleURL | None = self.subtitle_codes.get(subtitle_def) def __getitem__(self, item: str) -> SubtitleURL: """Returns subtitle by name or code""" if item in self.subtitle_names: return self.subtitle_names[item] return self.subtitle_codes[item] def get(self, item: str) -> SubtitleURL | None: """Returns subtitle by name or code, if not found returns None""" if not self.has_subtitles: return None return self.subtitle_names.get(item) or self.subtitle_codes.get(item) def __getattr__(self, item: str) -> SubtitleURL: """Returns subtitle by code""" return self.subtitle_codes[item] def __bool__(self): """Is subtitles exists""" return self.has_subtitles def __repr__(self): return f'{self.__class__.__qualname__}<{self.subtitles!r}>'
Methods
def get(self, item: str) ‑> SubtitleURL | None-
Expand source code
def get(self, item: str) -> SubtitleURL | None: """Returns subtitle by name or code, if not found returns None""" if not self.has_subtitles: return None return self.subtitle_names.get(item) or self.subtitle_codes.get(item)Returns subtitle by name or code, if not found returns None