Сделал выбор действия: добавление, удаление треков или и то, и другое одновременно
This commit is contained in:
parent
125b793bb1
commit
c56854394c
1 changed files with 37 additions and 9 deletions
46
main.py
46
main.py
|
@ -2,27 +2,55 @@ import yaml
|
||||||
from yandex_music import Client
|
from yandex_music import Client
|
||||||
|
|
||||||
config = yaml.safe_load(open("config.yaml", "r", encoding="utf-8"))
|
config = yaml.safe_load(open("config.yaml", "r", encoding="utf-8"))
|
||||||
client = Client(token=config["token"])
|
client = Client(token=config["token"]).init()
|
||||||
|
|
||||||
|
|
||||||
def delete_track() -> None:
|
def delete_track() -> None:
|
||||||
client.init()
|
|
||||||
len_playlist = client.users_likes_tracks()
|
len_playlist = client.users_likes_tracks()
|
||||||
uid = client.account_status()["account"]["uid"]
|
uid = client.account_status()["account"]["uid"]
|
||||||
|
|
||||||
for track in client.users_playlists(kind=3)["tracks"]:
|
for track in client.users_playlists(kind=3)["tracks"]:
|
||||||
client.users_likes_tracks_remove(track_ids=track["id"])
|
client.users_likes_tracks_remove(track_ids=track["id"])
|
||||||
print(f"Удален трек: {track['track']['title']}")
|
print(
|
||||||
|
f"Удален трек: {track['track']['artists'][0]['name']} - {track['track']['title']}"
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
def add_track() -> None:
|
def add_track(path: str) -> None:
|
||||||
with open("tracks.txt", "r", encoding="utf-8") as file:
|
with open(path, "r", encoding="utf-8") as file:
|
||||||
for track in file.read().splitlines():
|
for track in file.read().splitlines():
|
||||||
track_search = client.search(text=track)["tracks"]["results"][0]
|
track_search = client.search(text=track)
|
||||||
client.users_likes_tracks_add(track_ids=track_search["id"])
|
try:
|
||||||
|
track_info = track_search["tracks"]["results"][0]
|
||||||
|
client.users_likes_tracks_add(track_ids=track_info["id"])
|
||||||
|
print(
|
||||||
|
f"Добавлен трек: {track_info['artists'][0]['name']} - {track_info['title']}"
|
||||||
|
)
|
||||||
|
except TypeError:
|
||||||
|
print(f"Не удалось добавить '{track}'")
|
||||||
|
|
||||||
print(f"Добавлен трек: {track_search['title']}")
|
|
||||||
|
def main() -> None:
|
||||||
|
print("Выберите действие:")
|
||||||
|
print("1. Удалить все треки")
|
||||||
|
print("2. Добавить все треки")
|
||||||
|
print("3. Удалить и добавить все треки")
|
||||||
|
|
||||||
|
action = input("Введите: ").strip()
|
||||||
|
|
||||||
|
match action:
|
||||||
|
case "1":
|
||||||
|
delete_track()
|
||||||
|
case "2":
|
||||||
|
file_path = input("Введите путь к файлу для добавления треков: ").strip()
|
||||||
|
add_track(file_path)
|
||||||
|
case "3":
|
||||||
|
file_path = input("Введите путь к файлу для добавления треков: ").strip()
|
||||||
|
delete_track()
|
||||||
|
add_track(file_path)
|
||||||
|
case default:
|
||||||
|
print("Нет такого варианта")
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
delete_track()
|
main()
|
||||||
|
|
Loading…
Add table
Reference in a new issue