Исправлена подстановка текущего пользователя в методы клиента, если а…
このコミットが含まれているのは:
コミット
05e1282e46
|
@ -96,14 +96,14 @@ class Album(YandexMusicObject):
|
|||
|
||||
client.users_likes_albums_add(album.id, user.id *args, **kwargs)
|
||||
"""
|
||||
return self.client.users_likes_albums_add(self.id, self.client.account.uid, *args, **kwargs)
|
||||
return self.client.users_likes_albums_add(self.id, self.client.me.account.uid, *args, **kwargs)
|
||||
|
||||
def dislike(self, *args, **kwargs):
|
||||
"""Сокращение для::
|
||||
|
||||
client.users_likes_albums_remove(album.id, user.id *args, **kwargs)
|
||||
"""
|
||||
return self.client.users_likes_albums_remove(self.id, self.client.account.uid, *args, **kwargs)
|
||||
return self.client.users_likes_albums_remove(self.id, self.client.me.account.uid, *args, **kwargs)
|
||||
|
||||
@classmethod
|
||||
def de_json(cls, data, client):
|
||||
|
|
|
@ -79,14 +79,14 @@ class Artist(YandexMusicObject):
|
|||
|
||||
client.users_likes_artists_add(artist.id, user.id *args, **kwargs)
|
||||
"""
|
||||
return self.client.users_likes_artists_add(self.id, self.client.account.uid, *args, **kwargs)
|
||||
return self.client.users_likes_artists_add(self.id, self.client.me.account.uid, *args, **kwargs)
|
||||
|
||||
def dislike(self, *args, **kwargs):
|
||||
"""Сокращение для::
|
||||
|
||||
client.users_likes_artists_remove(artist.id, user.id *args, **kwargs)
|
||||
"""
|
||||
return self.client.users_likes_artists_remove(self.id, self.client.account.uid, *args, **kwargs)
|
||||
return self.client.users_likes_artists_remove(self.id, self.client.me.account.uid, *args, **kwargs)
|
||||
|
||||
def get_tracks(self, page=0, page_size=20, *args, **kwargs):
|
||||
"""Сокращение для::
|
||||
|
|
|
@ -49,6 +49,9 @@ def log(method):
|
|||
class Client(YandexMusicObject):
|
||||
"""Класс представляющий клиент Yandex Music.
|
||||
|
||||
При `fetch_account_status = False` многие сокращения перестанут работать в связи с тем, что неоткуда будет взять
|
||||
uid аккаунта для отправки запроса. Так же в большинстве методов придётся передавать uid явно.
|
||||
|
||||
Attributes:
|
||||
logger (:obj:`logging.Logger`): Объект логера.
|
||||
token (:obj:`str`): Уникальный ключ для аутентификации.
|
||||
|
@ -497,6 +500,9 @@ class Client(YandexMusicObject):
|
|||
:class:`yandex_music.YandexMusicError`
|
||||
"""
|
||||
|
||||
if uid is None and self.me is not None:
|
||||
uid = self.me.account.uid
|
||||
|
||||
url = f'{self.base_url}/play-audio'
|
||||
|
||||
data = {
|
||||
|
@ -504,7 +510,7 @@ class Client(YandexMusicObject):
|
|||
'from-cache': from_cache,
|
||||
'from': from_,
|
||||
'play-id': play_id or '',
|
||||
'uid': uid or self.account.uid,
|
||||
'uid': uid,
|
||||
'timestamp': timestamp or f'{datetime.now().isoformat()}Z',
|
||||
'track-length-seconds': track_length_seconds,
|
||||
'total-played-seconds': total_played_seconds,
|
||||
|
@ -628,8 +634,8 @@ class Client(YandexMusicObject):
|
|||
:class:`yandex_music.YandexMusicError`
|
||||
"""
|
||||
|
||||
if user_id is None:
|
||||
user_id = self.account.uid
|
||||
if user_id is None and self.me is not None:
|
||||
user_id = self.me.account.uid
|
||||
|
||||
url = f'{self.base_url}/users/{user_id}/playlists'
|
||||
|
||||
|
@ -662,8 +668,8 @@ class Client(YandexMusicObject):
|
|||
:class:`yandex_music.YandexMusicError`
|
||||
"""
|
||||
|
||||
if user_id is None:
|
||||
user_id = self.account.uid
|
||||
if user_id is None and self.me is not None:
|
||||
user_id = self.me.account.uid
|
||||
|
||||
url = f'{self.base_url}/users/{user_id}/playlists/create'
|
||||
|
||||
|
@ -695,8 +701,8 @@ class Client(YandexMusicObject):
|
|||
:class:`yandex_music.YandexMusicError`
|
||||
"""
|
||||
|
||||
if user_id is None:
|
||||
user_id = self.account.uid
|
||||
if user_id is None and self.me is not None:
|
||||
user_id = self.me.account.uid
|
||||
|
||||
url = f'{self.base_url}/users/{user_id}/playlists/{kind}/delete'
|
||||
|
||||
|
@ -724,8 +730,8 @@ class Client(YandexMusicObject):
|
|||
:class:`yandex_music.YandexMusicError`
|
||||
"""
|
||||
|
||||
if user_id is None:
|
||||
user_id = self.account.uid
|
||||
if user_id is None and self.me is not None:
|
||||
user_id = self.me.account.uid
|
||||
|
||||
url = f'{self.base_url}/users/{user_id}/playlists/{kind}/name'
|
||||
|
||||
|
@ -758,8 +764,8 @@ class Client(YandexMusicObject):
|
|||
:class:`yandex_music.YandexMusicError`
|
||||
"""
|
||||
|
||||
if user_id is None:
|
||||
user_id = self.account.uid
|
||||
if user_id is None and self.me is not None:
|
||||
user_id = self.me.account.uid
|
||||
|
||||
url = f'{self.base_url}/users/{user_id}/playlists/{kind}/change'
|
||||
|
||||
|
@ -799,8 +805,8 @@ class Client(YandexMusicObject):
|
|||
:class:`yandex_music.YandexMusicError`
|
||||
"""
|
||||
|
||||
if user_id is None:
|
||||
user_id = self.account.uid
|
||||
if user_id is None and self.me is not None:
|
||||
user_id = self.me.account.uid
|
||||
|
||||
diff = Difference().add_insert(at, {'id': track_id, 'album_id': album_id})
|
||||
|
||||
|
@ -831,8 +837,8 @@ class Client(YandexMusicObject):
|
|||
:class:`yandex_music.YandexMusicError`
|
||||
"""
|
||||
|
||||
if user_id is None:
|
||||
user_id = self.account.uid
|
||||
if user_id is None and self.me is not None:
|
||||
user_id = self.me.account.uid
|
||||
|
||||
diff = Difference().add_delete(from_, to)
|
||||
|
||||
|
@ -991,8 +997,8 @@ class Client(YandexMusicObject):
|
|||
|
||||
def _like_action(self, object_type: str, ids: str or int or list, remove: bool = False, user_id: str or int = None,
|
||||
timeout=None, *args, **kwargs):
|
||||
if user_id is None:
|
||||
user_id = self.account.uid
|
||||
if user_id is None and self.me is not None:
|
||||
user_id = self.me.account.uid
|
||||
|
||||
action = 'remove' if remove else 'add-multiple'
|
||||
url = f'{self.base_url}/users/{user_id}/likes/{object_type}s/{action}'
|
||||
|
@ -1072,8 +1078,8 @@ class Client(YandexMusicObject):
|
|||
|
||||
@log
|
||||
def users_playlists_list(self, user_id: int or str = None, timeout=None, *args, **kwargs):
|
||||
if user_id is None:
|
||||
user_id = self.account.uid
|
||||
if user_id is None and self.me is not None:
|
||||
user_id = self.me.account.uid
|
||||
|
||||
url = f'{self.base_url}/users/{user_id}/playlists/list'
|
||||
|
||||
|
@ -1082,8 +1088,8 @@ class Client(YandexMusicObject):
|
|||
return Playlist.de_list(result, self)
|
||||
|
||||
def _get_likes(self, object_type, user_id: int or str = None, params=None, timeout=None, *args, **kwargs):
|
||||
if user_id is None:
|
||||
user_id = self.account.uid
|
||||
if user_id is None and self.me is not None:
|
||||
user_id = self.me.account.uid
|
||||
|
||||
url = f'{self.base_url}/users/{user_id}/likes/{object_type}s'
|
||||
|
||||
|
@ -1115,8 +1121,8 @@ class Client(YandexMusicObject):
|
|||
@log
|
||||
def users_dislikes_tracks(self, user_id: int or str = None, if_modified_since_revision=0,
|
||||
timeout=None, *args, **kwargs):
|
||||
if user_id is None:
|
||||
user_id = self.account.uid
|
||||
if user_id is None and self.me is not None:
|
||||
user_id = self.me.account.uid
|
||||
|
||||
url = f'{self.base_url}/users/{user_id}/dislikes/tracks'
|
||||
|
||||
|
@ -1127,8 +1133,8 @@ class Client(YandexMusicObject):
|
|||
|
||||
def _dislike_action(self, ids: str or int or list, remove: bool = False, user_id: str or int = None,
|
||||
timeout=None, *args, **kwargs):
|
||||
if user_id is None:
|
||||
user_id = self.account.uid
|
||||
if user_id is None and self.me is not None:
|
||||
user_id = self.me.account.uid
|
||||
|
||||
action = 'remove' if remove else 'add-multiple'
|
||||
url = f'{self.base_url}/users/{user_id}/dislikes/tracks/{action}'
|
||||
|
|
|
@ -74,7 +74,7 @@ class Playlist(YandexMusicObject):
|
|||
|
||||
@property
|
||||
def is_mine(self):
|
||||
return self.owner.uid == self.client.account.uid
|
||||
return self.owner.uid == self.client.me.account.uid
|
||||
|
||||
@property
|
||||
def playlist_id(self):
|
||||
|
@ -113,14 +113,14 @@ class Playlist(YandexMusicObject):
|
|||
|
||||
client.users_likes_playlists_add(playlist.uid, user.id *args, **kwargs)
|
||||
"""
|
||||
return self.client.users_likes_playlists_add(self.uid, self.client.account.uid, *args, **kwargs)
|
||||
return self.client.users_likes_playlists_add(self.uid, self.client.me.account.uid, *args, **kwargs)
|
||||
|
||||
def dislike(self, *args, **kwargs):
|
||||
"""Сокращение для::
|
||||
|
||||
client.users_likes_playlists_remove(playlist.uid, user.id *args, **kwargs)
|
||||
"""
|
||||
return self.client.users_likes_playlists_remove(self.uid, self.client.account.uid, *args, **kwargs)
|
||||
return self.client.users_likes_playlists_remove(self.uid, self.client.me.account.uid, *args, **kwargs)
|
||||
|
||||
@classmethod
|
||||
def de_json(cls, data, client):
|
||||
|
|
|
@ -105,14 +105,14 @@ class Track(YandexMusicObject):
|
|||
|
||||
client.users_likes_tracks_add(track.id, user.id, *args, **kwargs)
|
||||
"""
|
||||
return self.client.users_likes_tracks_add(self.track_id, self.client.account.uid, *args, **kwargs)
|
||||
return self.client.users_likes_tracks_add(self.track_id, self.client.me.account.uid, *args, **kwargs)
|
||||
|
||||
def dislike(self, *args, **kwargs):
|
||||
"""Сокращение для::
|
||||
|
||||
client.users_likes_tracks_remove(track.id, user.id *args, **kwargs)
|
||||
"""
|
||||
return self.client.users_likes_tracks_remove(self.track_id, self.client.account.uid, *args, **kwargs)
|
||||
return self.client.users_likes_tracks_remove(self.track_id, self.client.me.account.uid, *args, **kwargs)
|
||||
|
||||
@property
|
||||
def track_id(self):
|
||||
|
|
読み込み中…
新しいイシューから参照