From 30a101d2f7324ca3f265b7057480ff5e6412cd0b Mon Sep 17 00:00:00 2001 From: "Il'ya (Marshal)" Date: Sun, 20 Feb 2022 22:44:00 +0100 Subject: [PATCH] =?UTF-8?q?=D0=B4=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D1=8B=20=D0=B8=D1=81=D0=BA=D0=BB=D1=8E=D1=87=D0=B5=D0=BD?= =?UTF-8?q?=D0=B8=D1=8F=20=D0=BF=D1=80=D0=B8=20=D0=BF=D1=80=D0=B8=D1=81?= =?UTF-8?q?=D1=83=D1=82=D1=81=D1=82=D0=B2=D0=B8=D0=B8=20=D0=B2=20=D0=BC?= =?UTF-8?q?=D0=BE=D0=B4=D0=B5=D0=BB=D1=8F=D1=85=20Album,=20Trak,=20Artist,?= =?UTF-8?q?=20Cover=20=D0=BF=D0=BE=D0=BB=D1=8F=20error=20(=D0=B2=20=D0=B4?= =?UTF-8?q?=D0=B0=D0=BD=D0=BD=D0=BE=D0=BC=20=D1=81=D0=BB=D1=83=D1=87=D0=B0?= =?UTF-8?q?=D0=B5=20=D1=81=D0=B5=D1=80=D0=B2=D0=B5=D1=80=20=D0=BE=D1=82?= =?UTF-8?q?=D0=B4=D0=B0=D1=91=D1=82=20200=20=D0=B8=20=D0=BE=D1=82=20=D0=BC?= =?UTF-8?q?=D0=BE=D0=B4=D0=B5=D0=BB=D0=B8=20=D0=B2=D0=BE=D0=B7=D0=B2=D1=80?= =?UTF-8?q?=D0=B0=D1=89=D0=B0=D0=B5=D1=82=D1=81=D1=8F=20=D1=82=D0=BE=D0=BB?= =?UTF-8?q?=D1=8C=D0=BA=D0=BE=20=D0=BF=D0=BE=D0=BB=D0=B5=20ID)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- yandex_music/album/album.py | 4 ++++ yandex_music/artist/artist.py | 4 ++++ yandex_music/cover.py | 4 ++++ yandex_music/track/track.py | 9 ++++++--- 4 files changed, 18 insertions(+), 3 deletions(-) diff --git a/yandex_music/album/album.py b/yandex_music/album/album.py index c9a4bfe..07a3209 100644 --- a/yandex_music/album/album.py +++ b/yandex_music/album/album.py @@ -1,6 +1,7 @@ from typing import Any, TYPE_CHECKING, Optional, List, Union from yandex_music import YandexMusicObject +from yandex_music.exceptions import YandexMusicError from yandex_music.utils import model if TYPE_CHECKING: @@ -117,6 +118,9 @@ class Album(YandexMusicObject): client: Optional['Client'] = None def __post_init__(self): + if self.error: + raise YandexMusicError(self.error) + self._id_attrs = (self.id,) def with_tracks(self, *args, **kwargs) -> Optional['Album']: diff --git a/yandex_music/artist/artist.py b/yandex_music/artist/artist.py index 02eab5e..1e22d3f 100644 --- a/yandex_music/artist/artist.py +++ b/yandex_music/artist/artist.py @@ -1,6 +1,7 @@ from typing import Any, TYPE_CHECKING, Optional, List, Union from yandex_music import YandexMusicObject +from yandex_music.exceptions import YandexMusicError from yandex_music.utils import model if TYPE_CHECKING: @@ -79,6 +80,9 @@ class Artist(YandexMusicObject): client: 'Client' = None def __post_init__(self): + if self.error: + raise YandexMusicError(self.error) + self._id_attrs = (self.id, self.name, self.cover) def download_og_image(self, filename: str, size: str = '200x200') -> None: diff --git a/yandex_music/cover.py b/yandex_music/cover.py index 6677d89..767f086 100644 --- a/yandex_music/cover.py +++ b/yandex_music/cover.py @@ -1,6 +1,7 @@ from typing import TYPE_CHECKING, Optional, List from yandex_music import YandexMusicObject +from yandex_music.exceptions import YandexMusicError from yandex_music.utils import model if TYPE_CHECKING: @@ -40,6 +41,9 @@ class Cover(YandexMusicObject): client: Optional['Client'] = None def __post_init__(self): + if self.error: + raise YandexMusicError(self.error) + self._id_attrs = (self.prefix, self.version, self.uri, self.items_uri) def download(self, filename: str, index: int = 0, size: str = '200x200') -> None: diff --git a/yandex_music/track/track.py b/yandex_music/track/track.py index aba42f7..6973b14 100644 --- a/yandex_music/track/track.py +++ b/yandex_music/track/track.py @@ -2,7 +2,7 @@ from typing import TYPE_CHECKING, Optional, List, Union from yandex_music import YandexMusicObject from yandex_music.utils import model -from yandex_music.exceptions import InvalidBitrateError +from yandex_music.exceptions import InvalidBitrateError, YandexMusicError if TYPE_CHECKING: from yandex_music import ( @@ -70,10 +70,10 @@ class Track(YandexMusicObject): preview_duration_ms (:obj:`int`, optional): TODO. available_full_without_permission (:obj:`bool`, optional): Доступен ли без подписки. version (:obj:`str`, optional): Версия. - remember_position (:obj:`bool`, optional): Если :obj:`True`, то запоминатся последняя позиция прослушивания, + remember_position (:obj:`bool`, optional): Если :obj:`True`, то запоминается последняя позиция прослушивания, иначе позиция не запоминается. background_video_uri (:obj:`str`, optional): Ссылка на видеошот. - short_description (:obj:`str`, optional): Краткое опсание эпизода подкаста. + short_description (:obj:`str`, optional): Краткое описание эпизода подкаста. is_suitable_for_children (:obj:`bool`, optional): Подходит ли для детей TODO. client (:obj:`yandex_music.Client`): Клиент Yandex Music. """ @@ -119,6 +119,9 @@ class Track(YandexMusicObject): client: Optional['Client'] = None def __post_init__(self): + if self.error: + raise YandexMusicError(self.error) + self.download_info = None self._id_attrs = (self.id,)