Giter Club home page Giter Club logo

rhythmbox-plugin-yandex-music's Introduction

Яндекс.Музыка в Rhythmbox

Данный репозиторий содержит плагин для музыкального плеера Rhythmbox, предоставляющий возможность слушать музыку из сервиса Яндекс.Музыка. Скриншот

Установка

Arch Linux

В случае использования репозитория AUR, вы можете установить пакет rhythmbox-plugin-yandex-music из AUR через ваш пакетный менеджер или терминал. В ином случае требуется действовать согласно инструкции для других дистрибутивов.

Fedora

Перед установкой плагина необходимо установить дополнительные компоненты Python3

$ sudo dnf in python3-frozenlist python3-multidict python3-yarl

После этого следуйте инструкции для других дистрибутивов.

Другие дистрибутивы

Для работы плагина требуется установить неофициальную Python библиотеку API Yandex Music.

$ pip install yandex-music --upgrade

Далее закройте музыкальный плеер Rhythmbox, если он у вас запущен, и выполните установку релизной или тестовой версии плагина.

Релизная версия плагина является более стабильной и включает функционал, который завершён полностью или с незначительными замечаниями. Тестовая версия плагина включает весь функционал, написанный на данный момент, даже в незавершенном виде, но может работать с ошибками.

Релизная версия

Теперь необходимо скачать плагин из репозитория, распаковать его и переместить в папку с плагинами Rhythmbox.

$ wget https://github.com/dobroweb/rhythmbox-plugin-yandex-music/archive/refs/tags/0.5-alpha.tar.gz
$ tar -zxvf 0.5-alpha.tar.gz
$ mkdir -p ~/.local/share/rhythmbox/plugins/
$ mv rhythmbox-plugin-yandex-music-0.5-alpha ~/.local/share/rhythmbox/plugins/yandex-music

Тестовая версия

Вам достаточно клонировать репозиторий в папку с плагинами Rhythmbox.

$ git clone https://github.com/feschukov/rhythmbox-plugin-yandex-music.git ~/.local/share/rhythmbox/plugins/yandex-music

Обновление

Arch Linux

В случае использования репозитория AUR, вам достаточно обновить пакет rhythmbox-plugin-yandex-music из AUR через ваш пакетный менеджер или терминал. В ином случае требуется действовать согласно инструкции для других дистрибутивов.

Другие дистрибутивы

Для начала требуется обновить неофициальную Python библиотеку API Yandex Music такой же командой, как и при установке плагина.

Далее закройте музыкальный плеер Rhythmbox, если он у вас запущен, и выполните обновление релизной или тестовой версии плагина.

Релизная версия

Теперь необходимо удалить старый плагин, скачать новый и переместить его в папку с плагинами Rhythmbox.

$ rm -R ~/.local/share/rhythmbox/plugins/yandex-music
$ wget https://github.com/dobroweb/rhythmbox-plugin-yandex-music/archive/refs/tags/0.5-alpha.tar.gz
$ tar -zxvf 0.5-alpha.tar.gz
$ mv rhythmbox-plugin-yandex-music-0.5-alpha ~/.local/share/rhythmbox/plugins/yandex-music

Тестовая версия

Вам достаточно обновить репозиторий в папке с установленным плагином.

git -C ~/.local/share/rhythmbox/plugins/yandex-music pull

Настройка

После установки плагина необходимо его активировать в настройках Rhythmbox. Все возможности будут доступны только после авторизации в сервисе Яндекс.Музыка и при наличии активной подписки.

Запустите Rhythmbox, выберите источник "Мне нравится" из группы "Яндекс.Музыка" и авторизуйтесь, используя ваш логин и пароль. Плагин хранит только token, который генерирует Яндекс, и использует его для дальнейшей авторизации.

Отладка

В случае возникновления проблем при работе с плагином вы можете запустить Rhythmbox, используя следующую команду

$ rhythmbox -D yandex-music

После чего повторите действия, которые привели к ошибке, и сообщите о ней.

rhythmbox-plugin-yandex-music's People

Contributors

alexyurkin avatar borzoff avatar elektroplayer avatar feschukov avatar lowitea avatar uvlad7 avatar zhadaevfm avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

rhythmbox-plugin-yandex-music's Issues

Отображение прослушанного в истории прослушивания

В приложениях Я.Музыки есть разделы с историей прослушанных треков, история должна влиять на рекомендации. Если послушать треки в Rhythmbox, то в истории этих треков не будет, а хотелось бы получать корректные рекомендации.

Съедается начало песен

Стало съедаться начало песен, примерно первые 3-5 секунд просто пропускаются и играть начинает не с начала, а предыдущий трек замирает в конце на несколько секунд, за одну-две секунды до конца обычно. Это происходит только в потоке (Моя волна к примеру). При этом если перемотать на начало трека руками, то играть начинает нормально, без пропуска.

На видео пример как это происходит.
Screencast from 28.11.2022 14:50:07.webm

Is there any way to add caching?

And it also would be great to use async operations to not to freeze UI (now it freezes when you switch between tracks so I assume the track is fully downloaded before the plugin returns the control back to rhythmbox, pls correct me if I'm wrong)

Функции лайка/дизлайка песен

При прослушивании песен из рекомендательной подборки не хватает возможности поставить "лайк" понравившейся песне, чтобы песня оказалась в списке "Мне нравится" и рекомендательная система яндекса тоже поняла что песня нравится. Аналогично с дизлайком.

код подтверждения

при включении плагина выскакивает уведомление "сейчас откроется браузер. скопируйте код (code=<код>) из адресной строки и введите в форму"
Нажимаю "ок" появляется форма для ввода кода, браузер не открывается и ничего более не происходит.
screen
screen2

plugin yandex-music

Добрый день! Не запускается плагин:
** (rhythmbox:17867): WARNING **: 10:50:25.419: Error importing plugin 'yandex-music':
Traceback (most recent call last):
File "/usr/lib/python3.10/importlib/init.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 1050, in _gcd_import
File "", line 1027, in _find_and_load
File "", line 1006, in _find_and_load_unlocked
File "", line 688, in _load_unlocked
File "", line 883, in exec_module
File "", line 241, in _call_with_frames_removed
File "/home/sergey/.local/share/rhythmbox/plugins/yandex-music/yandex-music.py", line 2, in
from yandex_music import Client
ModuleNotFoundError: No module named 'yandex_music'

(rhythmbox:17867): libpeas-WARNING **: 10:50:25.419: Error loading plugin 'yandex-music'

При этом апи музыки установлено и в питоне импортируется без проблем

Ошибка при загрузке плейлиста

При наличии более чем 10 плейлистов часть из них не корректно загружается.
image
image
image
Судя по всему проблема появилась из-за того в функции load_tracks класса YMFeedSource отбрасываются только первые 6 символов, что приводит к проблеме, в случае двузначного(и более) кол-ва плейлистов.

Не включается плагин

Не удаётся активировать плагин в настройках Rhythmbox:

screen
Расположение файлов:

Снимок экрана от 2022-04-09 15-51-30
Библиотеку yandex-music-api установил через pip, пробовал через pip3

Слова благодарности

Больше спасибо за плагин! Пожалуйста, не забрасывайте разработку. Похоже, это единственное вменяемое решение для линуксоидов послушать Яндекс.Музыку.

Everything disconnects?

Hey, unfortunately i can't write russian well, but i understand it. After listening to some tracks ( maybe 10-15? on Моя Волна it's less ) rhythmbox doesn't go to the next track and i can't select any other track and have to restart the program.

Не работает, пишет, что не удалось загрузить

Всё, что написала консоль в отладке ниже

rhythmbox:10161): Gtk-WARNING **: 15:37:26.642: actionhelper: action app.play-repeat can't be activated due to parameter type mismatch (parameter type b, target type NULL)

(rhythmbox:10161): Gtk-WARNING **: 15:37:26.643: actionhelper: action app.play-shuffle can't be activated due to parameter type mismatch (parameter type b, target type NULL)

(rhythmbox:10161): Rhythmbox-WARNING **: 15:37:26.740: Could not open device /dev/radio0
do_connect: could not connect to socket
connect: Нет такого файла или каталога

** (rhythmbox:10161): WARNING **: 15:37:34.924: Error importing plugin 'yandex-music':
Traceback (most recent call last):
File "/usr/lib/python3.10/importlib/init.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 1050, in _gcd_import
File "", line 1027, in _find_and_load
File "", line 1006, in _find_and_load_unlocked
File "", line 688, in _load_unlocked
File "", line 883, in exec_module
File "", line 241, in _call_with_frames_removed
File "/home/misterairz/.local/share/rhythmbox/plugins/yandex-music/yandex-music.py", line 2, in
from yandex_music import Client
File "/usr/local/lib/python3.10/dist-packages/yandex_music-2.1.1-py3.10.egg/yandex_music/init.py", line 142, in
from .client import Client
File "/usr/local/lib/python3.10/dist-packages/yandex_music-2.1.1-py3.10.egg/yandex_music/client.py", line 48, in
from yandex_music.utils.request import Request
File "/usr/local/lib/python3.10/dist-packages/yandex_music-2.1.1-py3.10.egg/yandex_music/utils/request.py", line 12, in
import requests
File "/usr/lib/python3/dist-packages/requests/init.py", line 43, in
import urllib3
File "/usr/lib/python3/dist-packages/urllib3/init.py", line 13, in
from .connectionpool import HTTPConnectionPool, HTTPSConnectionPool, connection_from_url
File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 43, in
from .util.queue import LifoQueue
File "/usr/lib/python3/dist-packages/urllib3/util/queue.py", line 11, in
class LifoQueue(queue.Queue):
AttributeError: module 'queue' has no attribute 'Queue'

(rhythmbox:10161): libpeas-WARNING **: 15:37:34.924: Error loading plugin 'yandex-music'

Обновление плагина

Не нашел в описании информации о том как обновить плагин? Везде фигурирует ссылка на один и тот же архив "0.3-alpha".

Скрытие пароля

Когда ввожу пароль он виден, а хотелось бы возможность его скрывать:
изображение

Кикнул все девайсы с акка и не могу использовать плагин

Я кикнул все девайсы с яндекс аккаунта,и теперь не могу использовать плагин.Категорий нет.
Вывод консоли:
Traceback (most recent call last): File "/usr/lib/rhythmbox/plugins/yandex-music/yandex-music.py", line 29, in do_load if self.login_yandex(): ^^^^^^^^^^^^^^^^^^^ File "/usr/lib/rhythmbox/plugins/yandex-music/yandex-music.py", line 115, in login_yandex self.client = Client(token).init() ^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/site-packages/yandex_music/client.py", line 70, in wrapper result = method(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/site-packages/yandex_music/client.py", line 156, in init self.me = self.account_status() ^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/site-packages/yandex_music/client.py", line 70, in wrapper result = method(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/site-packages/yandex_music/client.py", line 175, in account_status result = self._request.get(url, *args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/site-packages/yandex_music/utils/request.py", line 263, in get result = self._request_wrapper( ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/site-packages/yandex_music/utils/request.py", line 231, in _request_wrapper raise UnauthorizedError(message) yandex_music.exceptions.UnauthorizedError: {'name': 'session-expired', 'message': 'Your OAuth token is likely expired'}
Как перезайти в акк?

Яндекс музыка не появилась в плагине

rhythmbox -D yandex-music
вывод:

_(rhythmbox:18980): Gtk-WARNING **: 12:25:00.288: actionhelper: action app.play-repeat can't be activated due to parameter type mismatch (parameter type NULL, target type b)

(rhythmbox:18980): Gtk-WARNING **: 12:25:00.288: actionhelper: action app.play-shuffle can't be activated due to parameter type mismatch (parameter type NULL, target type b)
/usr/lib/python3/dist-packages/gi/overrides/GObject.py:502: Warning: ../../../gobject/gsignal.c:2736: instance '0x56357489b360' has no handler with id '14062'
return func(*args, **kwargs)_

rhythmdox_yandex-music

Добавить асинхронности

При небольшой скорости интернета создается впечатление, что всё повисло. Интерфейс Rhythmbox'а не реагирует пока не выполняться все операции в плагине, начиная с запуска Rhythmbox'а (загрузки плагина) и при навигации по ресурсам (загрузка списков, включение или переключение песен).

login or password is not valid

После активации плагина, сразу же запрашивается логин/пароль и открывается несколько наложенных друг на друга окон авторизации.
При попытке авторизоваться ошибка login or password is not valid. Двухфакторка отключена, пароль точно верный.
ОС Ubuntu 23.04
Извиняюсь за скрин вместо листинга, всё делается на планшете, копипаст проблемный)
изображение_2023-02-10_101243775

Выход из учётной записи или сброс токена

Решил оставить на всякий случай, может кому-то понадобится.

UPD: можно также сбросить токен через терминал командой

dconf reset /org/gnome/rhythmbox/plugins/yandex-music/token

Пока не реализован выход из учетной записи токен-авторизации можно сбросить через: dconf-editor
изображение
Заходим в него и нажимаем на лупу:
изображение
После чего в поиске пишем "yandex" и выбираем наш плагин:
изображение
Нажимаем на него:
изображение
И выбираем "Erase key":
изображение
После этого можно перезпустить проигрыватель и пройти заново авторизацию.

Ошибка КАПЧИ.

При вводе логина и пароля, выводит ошибку капчи. Соответственно, никакой капчи он не отображает.

(18:43:20) [YandexMusic.do_activate] .local/share/rhythmbox/plugins/yandex-music/yandex-music.py:31: Yandex.Music plugin activating
(18:43:37) [YandexMusic.generate_token] .local/share/rhythmbox/plugins/yandex-music/yandex-music.py:232: Не удалось получить токен
(18:43:37) [YandexMusic.generate_token] .local/share/rhythmbox/plugins/yandex-music/yandex-music.py:233: {'error': '403', 'error_description': 'CAPTCHA required', 'x_captcha_key': '00AGykxz0xfEJ7W5kL0aQTJwL8ZeZ0bE', 'x_captcha_url': 'https://ext.captcha.yandex.net/image?key=00AGykxz0xfEJ7W5kL0aQTJwL8ZeZ0bE'}

Обложки для треков

Чудесно было бы подтягивать обложку для трека из я.м или может как-то можно сторонним плагином подтягивать?
изображение
Хотелось бы видеть красоту вот в такой ситуации

Загружает не весь список треков из плейлиста

При открытии плейлиста не загружает весь список из него, похоже доходит до какого то определенного момента, и останавливает загрузку, скорей всего это может быть связано с загруженными локальными треками в плейлисте.

Моя волна: постоянно один и тот же плейлист

Каждый раз при в тч и перезапуске плеера, плейлист "Моя волна" воспроизводит все тот же список что и в прошлый раз, правда порядок треков меняется (слегка). Проблема касается не только "первой" загруженной пачки, а плей-листа вообще.

(допускаю что может быть связано с закрытой страницей яндекс музыки в браузере через который авторизовывался)

Не авторизует в яндексе

При открытии программы и нажатия на "мою музыку" вылезает окно для ввода учётных данных с яндекса. При вводе любых данных (как верных так и рандомных) окно закрывается и ничего не происходит. И так после каждого перезапуска ритмбокса. Проверил в dconf там не создаётся папка yandex-music в разделе плагинов ритмбокса.

OS: Fedora Linux 36 (Workstation Edition) x86_64
DE: GNOME 42.0

AttributeError: module 'queue' has no attribute 'LifoQueue'

OS: Arch Linux x86_64
Kernel: 6.3.4-arch1-1

При попытке подключения плагина в rhythmbox выдается следующая ошибка:
`
Error importing plugin 'yandex-music':
Traceback (most recent call last):
File "/usr/lib/python3.11/importlib/init.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "", line 1206, in _gcd_import
File "", line 1178, in _find_and_load
File "", line 1149, in _find_and_load_unlocked
File "", line 690, in _load_unlocked
File "", line 940, in exec_module
File "", line 241, in _call_with_frames_removed
File "/usr/lib/rhythmbox/plugins/yandex-music/yandex-music.py", line 2, in
from yandex_music import Client
File "/home/execorn/.local/lib/python3.11/site-packages/yandex_music/init.py", line 142, in
from .client import Client
File "/home/execorn/.local/lib/python3.11/site-packages/yandex_music/client.py", line 48, in
from yandex_music.utils.request import Request
File "/home/execorn/.local/lib/python3.11/site-packages/yandex_music/utils/request.py", line 12, in
import requests
File "/home/execorn/.local/lib/python3.11/site-packages/requests/init.py", line 43, in
import urllib3
File "/home/execorn/.local/lib/python3.11/site-packages/urllib3/init.py", line 17, in
from .connectionpool import HTTPConnectionPool, HTTPSConnectionPool, connection_from_url
File "/home/execorn/.local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 68, in
class ConnectionPool:
File "/home/execorn/.local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 80, in ConnectionPool
QueueCls = queue.LifoQueue
^^^^^^^^^^^^^^^
AttributeError: module 'queue' has no attribute 'LifoQueue'

(rhythmbox:135133): libpeas-WARNING **: 21:10:21.411: Error loading plugin 'yandex-music'
`

Судя по всему, где-то есть файл или папка queue которая мешает, но сам я найти ее не смог.
Похожая ошибка:
https://github.com/eternnoir/pyTelegramBotAPI/issues/298

No modul named yandex-music

Нет папки Яндекс.Музыка. Зашел в настройки плагинов и там выбрал плагин, но он загорелся красным.
Также в консоли вывел код ошибки, что отсутсвует модуль yandex_music
Использую Fedora
Screenshot from 2024-03-07 22-48-49
Screenshot from 2024-03-07 22-51-29

Проблемы с авторизацией

Добрый день! Все установил по инструкции, но при попытке входа в аккаунт окно входа снова открывается пустым.

[sergey@asus-vivobook ~]$ rhythmbox -D yandex-music
(17:30:27) [YandexMusic.do_activate] .local/share/rhythmbox/plugins/yandex-music/yandex-music.py:31: Yandex.Music plugin activating
(17:30:38) [YandexMusic.generate_token] .local/share/rhythmbox/plugins/yandex-music/yandex-music.py:204: Не удалось получить токен
(17:30:38) [YandexMusic.generate_token] .local/share/rhythmbox/plugins/yandex-music/yandex-music.py:205: {'error': 'invalid_grant', 'error_description': 'login or password is not valid'}

Хотя логин и пароль точно правильные

Как подгрузить плейлисты

Подскажите, пожалуйста, в проигрываетеле вижу только 1 стандартный плейлист - "Мне нравится" и потоки.
В профиле Я.Музыки имею несколько альтернативных плейлистов, которые в проигрыватель не подтягиваются, хотя в комментариях по уже опубликованным issues так понимаю, они должны быть.
Возможно что-то делаю не так?

Rhythmbox: не удалось установить плагин по инструкции. Яндекс Музыки нет во вкладке слева

.......~$ rhythmbox -D yandex-music

(rhythmbox:5445): Gtk-WARNING **: 11:54:58.594: actionhelper: action app.play-repeat can't be activated due to parameter type mismatch (parameter type b, target type NULL)

(rhythmbox:5445): Gtk-WARNING **: 11:54:58.594: actionhelper: action app.play-shuffle can't be activated due to parameter type mismatch (parameter type b, target type NULL)
/usr/lib/python3/dist-packages/gi/overrides/GObject.py:493: Warning: ../../../gobject/gsignal.c:2765: instance '0x561d1c1c2e80' has no handler with id '14475'
return func(*args, **kwargs)
/usr/lib/python3/dist-packages/gi/overrides/GObject.py:493: Warning: ../../../gobject/gsignal.c:2765: instance '0x561d1c1c2e80' has no handler with id '14474'
return func(*args, **kwargs)

(rhythmbox:5445): Gtk-WARNING **: 11:55:42.558: Can't set a parent on widget which has a parent

Возможность загрузки треков в папку в контекстном меню

Здравствуйте ✋
Хотелось бы узнать есть ли возможность параллельной загрузки треков, желательно с "обложкой" и выбора директории.
Если таковой нет, то можно смело назвать это предложением 😅
Ещё я был бы непротив, если бы была фича автоматического скачивания трека параллельно с прослушиванием.
Т.е: я включаю трек и он сразу загружается в /home/dibusure/Music и это можно выбрать
Был бы очень рад если эти фичи добавят, так как очень нравится плагин 😃

не подключается плагин к rhythmbox 3.4.4

Добрый день.
Сделал по инструкции добавление плагина, но в списке доступных так его и нет.
В чем может быть проблема?

cat /etc/os-release
NAME="Ubuntu"
VERSION="20.04.5 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.5 LTS"
VERSION_ID="20.04"

image
image
image
image
image

Код подтверждения

При активации плагина появляется окно, после которого открывается браузер с яндекс музыкой, но никакого кода нет.
Откуда взять код, чтобы вставить в плагин?

Загрузка обложек

Rhythmbox 3.4.7 модуль загрузки обложек не подгружает изображения при прослушивании треков с Яндекса.
rhythmbox[19801]: g_file_get_uri: assertion 'G_IS_FILE (file)' failed
plasmashell[19801]: Traceback (most recent call last):
plasmashell[19801]: File "/usr/lib/rhythmbox/plugins/artsearch/artsearch.py", line 96, in album_art_requested
plasmashell[19801]: return s.next_search()
plasmashell[19801]: ^^^^^^^^^^^^^^^
plasmashell[19801]: File "/usr/lib/rhythmbox/plugins/artsearch/artsearch.py", line 57, in next_search
plasmashell[19801]: search.search(self.key, self.last_time, self.store, self.search_done, None)
plasmashell[19801]: File "/usr/lib/rhythmbox/plugins/artsearch/embedded.py", line 68, in search
plasmashell[19801]: callback(args)
plasmashell[19801]: File "/usr/lib/rhythmbox/plugins/artsearch/artsearch.py", line 61, in search_done
plasmashell[19801]: self.next_search()
plasmashell[19801]: File "/usr/lib/rhythmbox/plugins/artsearch/artsearch.py", line 57, in next_search
plasmashell[19801]: search.search(self.key, self.last_time, self.store, self.search_done, None)
plasmashell[19801]: File "/usr/lib/rhythmbox/plugins/artsearch/local.py", line 163, in search
plasmashell[19801]: enumfiles = parent.enumerate_children_async("standard::content-type,access::can-read,standard::name", 0, 0, None, self._enum_children_cb, None)
plasmashell[19801]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
plasmashell[19801]: AttributeError: 'NoneType' object has no attribute 'enumerate_children_async'

Сменить ID

Здравствуйте.

Пользуюсь плагином уже долго, пока вроде бы без глюков, за исключением смены ID. Хочу войти под другим аккаунтом, а как выйти из этого в плагине не понятно. Опишите механизм пожалуйста

Спасибо.

Переключатель качества HD

Здравствуйте, спасибо большое за плагин, наконец музыка с ноута управляется по KDE Connect с мобилы и через умный дом можно рулить музыкой.
Вопрос: нет никаких настроек качества музыки, в каком качестве идет поток? File size не виден, потому не понятно 320 MP3 тянет по умолчанию?

Ввод CAPTCHA при авторизации

(10:43:33) [0x55e3be8d4390] [YandexMusic.generate_token] .local/share/rhythmbox/plugins/yandex-music/yandex-music.py:204: Не удалось получить токен
(10:43:33) [0x55e3be8d4390] [YandexMusic.generate_token] .local/share/rhythmbox/plugins/yandex-music/yandex-music.py:205: {'error': '403', 'error_description': 'CAPTCHA required', 'x_captcha_key': '00A1YZyr78RDuW7CMSwjOF8G2QAxNBWQ', 'x_captcha_url': 'https://ext.captcha.yandex.net/image?key=00A1YZyr78RDuW7CMSwjOF8G2QAxNBWQ'}

Плагин не загружается после обновления Ubuntu с 22.04 до 22.04.1

После обновления Ubuntu c 22.04 до 22.04.1 плагин перестал загружаться. Вывод rhytmbox -D yandex-music (ниже) наводит на мысль, что API не утсановлено. Но при попытке переустановить API Яндекс-музыки pip пишет, что все нужные пакеты уже установлены.

Вывод команды $ rhythmbox -D yandex-music:

(rhythmbox:134324): Gtk-WARNING **: 09:57:40.691: actionhelper: action app.play-repeat can't be activated due to parameter type mismatch (parameter type b, target type NULL)

(rhythmbox:134324): Gtk-WARNING **: 09:57:40.691: actionhelper: action app.play-shuffle can't be activated due to parameter type mismatch (parameter type b, target type NULL)

** (rhythmbox:134324): WARNING **: 09:57:40.785: Error importing plugin 'yandex-music':
Traceback (most recent call last):
File "/usr/lib/python3.10/importlib/init.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 1050, in _gcd_import
File "", line 1027, in _find_and_load
File "", line 1006, in _find_and_load_unlocked
File "", line 688, in _load_unlocked
File "", line 883, in exec_module
File "", line 241, in _call_with_frames_removed
File "/home/barrou/.local/share/rhythmbox/plugins/rhythmbox-plugin-yandex-music-0.4-alpha/yandex-music.py", line 2, in
from yandex_music import Client
ModuleNotFoundError: No module named 'yandex_music'

(rhythmbox:134324): libpeas-WARNING **: 09:57:40.785: Error loading plugin 'yandex-music'
/usr/lib/python3/dist-packages/gi/overrides/GObject.py:493: Warning: ../../../gobject/gsignal.c:2731: instance '0x55b36331d300' has no handler with id '14581'
return func(*args, **kwargs)
/usr/lib/python3/dist-packages/gi/overrides/GObject.py:493: Warning: ../../../gobject/gsignal.c:2731: instance '0x55b36331d300' has no handler with id '14580'
return func(*args, **kwargs)

(rhythmbox:134324): Gtk-WARNING **: 09:57:43.625: Can't set a parent on widget which has a parent

yandex_music.exceptions.UnauthorizedError isn't handled

I tried to use this plugin after a long time and I can't relogin

(03:18:07) [0x560078e7bed0] [YandexMusic.do_activate] yandex-music.py:37: Yandex.Music plugin activating
Traceback (most recent call last):
  File "/home/vladimir/.local/share/rhythmbox/plugins/yandex-music/yandex-music.py", line 29, in do_load
    if self.login_yandex():
  File "/home/vladimir/.local/share/rhythmbox/plugins/yandex-music/yandex-music.py", line 115, in login_yandex
    self.client = Client(token).init()
  File "/home/vladimir/.local/lib/python3.10/site-packages/yandex_music/client.py", line 70, in wrapper
    result = method(*args, **kwargs)
  File "/home/vladimir/.local/lib/python3.10/site-packages/yandex_music/client.py", line 156, in init
    self.me = self.account_status()
  File "/home/vladimir/.local/lib/python3.10/site-packages/yandex_music/client.py", line 70, in wrapper
    result = method(*args, **kwargs)
  File "/home/vladimir/.local/lib/python3.10/site-packages/yandex_music/client.py", line 175, in account_status
    result = self._request.get(url, *args, **kwargs)
  File "/home/vladimir/.local/lib/python3.10/site-packages/yandex_music/utils/request.py", line 263, in get
    result = self._request_wrapper(
  File "/home/vladimir/.local/lib/python3.10/site-packages/yandex_music/utils/request.py", line 231, in _request_wrapper
    raise UnauthorizedError(message)
yandex_music.exceptions.UnauthorizedError: {'name': 'session-expired', 'message': 'Your OAuth token is likely expired'} 

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.