Discord RPC для показа музыки которую вы сейчас слушаете на компьютере. Загрузка треков и их обложка происходит из Яндекс Музыки.
Есть похожие RPC которые показывают текущий трек используя Api Яндекс Музыки. Но они не могут показывать что играет из радио(например Моя Волна
).
Поэтому я создал скрипт который берет из winsdk.windows.media.control
информацию о текущем треке, делает поиск в яндекс музыке и выводит трек в Discord.
Плюсы по сравнению с другими скриптами:
Не нужен токен Яндекс Музыки ✅
Показывает треки из подборок, радио ✅
Не ограничен использованием Яндекс Музыки, музыку можно слушать хоть из ВКонтакте ✅
Работает как с браузерами так и с приложениями ✅
Показывает статус паузы ✅
Показывает сколько осталось до конца трека ✅
Работа проверена только на Windows 11 и Windows 10, на других версиях и платформах работать не будет.
Если вы не будете использовать ехе файл то:
- Python 3.10+
-
Скачиваем последний доступный релиз
-
Открываем WinYandexMusicRPC.exe
-
Скрипт через 3 секунды автоматически скроется в системный трей. Откройте консоль через трей чтобы убедиться в работе.
-
Открываем терминал и идем в папку где находится файл
requirements.txt
. Пишемpip install -r requirements.txt
, для того что бы установить зависимости. -
В терминал пишем
python main.py
Чтобы скомпилировать скрипт с помощью Pyinstaller, выполните данную команду:
pyinstaller --onefile --add-data "assets\*;assets" --icon=assets\\tray.png main.py
В случае если вы слушаете музыку не только из яндекс музыки то рекомендую заменить строку strong_find = True
на strong_find = False
, или воспользуйтесь системным треем. Тогда будет показыватся лучший результат по поиску, но не всегда точный.
Баги всегда существуют, но сначала их надо найти 🫡
Если вы нашли ошибку, то не стесняйтесь сообщать о ней в Issues
Сделать чтобы таймер не сбрасывался при паузе трека ✅
Если долгая пауза - убирать статус ✅
Улучшить поиск песен ✅
Вместо консоли сделать приложение в трее ✅
Пожалуйста, покажите вашу заинтересованность в этом проекте, что бы я мог его обновлять по мере возможности.
Код не идеален, т.к питон не мой постоянный язык и писался скрипт только для личного пользования, но он может стать основой для ваших скриптов.
За основу был взят код yandex-music-rpc
Используется Yandex Music API