Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/vokash3/yandexmusicapp
YandexMusicApp - простое приложение для прослушивания Яндекс Музыки, основанное на PyQtWebEngine.
https://github.com/vokash3/yandexmusicapp
desktop linux-desktop macos-app music music-player music-service pyqt5-desktop-application pyqtwebengine python3 website webview yandex-music
Last synced: about 2 months ago
JSON representation
YandexMusicApp - простое приложение для прослушивания Яндекс Музыки, основанное на PyQtWebEngine.
- Host: GitHub
- URL: https://github.com/vokash3/yandexmusicapp
- Owner: vokash3
- Created: 2023-11-19T14:15:49.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2023-12-14T18:29:57.000Z (about 1 year ago)
- Last Synced: 2024-10-14T02:23:08.376Z (3 months ago)
- Topics: desktop, linux-desktop, macos-app, music, music-player, music-service, pyqt5-desktop-application, pyqtwebengine, python3, website, webview, yandex-music
- Language: Python
- Homepage: https://music.yandex.ru/
- Size: 996 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# YandexMusicApp (Unofficial)
___
_Linux_
![screen_linux](resources/static/screens/screen_linux.png)_macOS_
![screen_mac](resources/static/screens/screen_mac.png)## О проекте
Обычное приложение на Python 3, использующее PyWebEngine и PyQt5 для открытия веб
версии [Яндекс Музыки](https://music.yandex.ru/).Создавал для себя, так как официальных версий Яндекс Музыки для macOS и Linux нет, а публичное API так и не было
предоставлено.Зачастую не совсем удобно в рабочем профиле браузера открывать дополнительные вкладки с личным
аккаунтом для прослушивания треков из Яндекс Музыки. Это приложение решает такую проблему.# Подготовка к сборке
**_ПРЕДУПРЕЖДЕНИЕ_**
_Все команды желательно выполнять в терминале (не в терминалах IDE!), чтобы избежать проблем с зависимостями!_
Требуется наличие **[Python3](https://www.python.org/)** в системе и инструментов разработчика (GCC, XCode CommandLine
Tools и т.п.)Сборка и работоспособность протестированы:
- на macOS Sonoma 14.1.1 arm64 (Apple Silicon), Python
3.11.0, [Homebrew 4.1.20](https://brew.sh/), [CLTools 14.3.1](https://developer.apple.com/download/all/?q=Command%20Line%20Tools)
- на Linux Mint 21.2 x86_64, Python 3.10.12, [GCC 11.4.0](https://losst.pro/ustanovka-gcc-v-ubuntu-16-04)## Загрузка проекта
1) Скачать проект или выполнить клонирование (должен быть установлен git):
```bash
git clone https://github.com/vokash3/YandexMusicApp.git
```
2) Перейти в директорию с проектом и выполнить установку зависимостей:
```bash
python3 -m pip install -r requirements.txt
```
3) Остаться в директории с проектом YandexMusicApp.___
## Сборка для MacOS
**ДВА ВАРИАНТА**
### 1. Сборка через [py2app](https://github.com/ronaldoussoren/py2app/)
**_Особенность: приложение можно будет добавить в Программы_**
- Установить py2app:
```bash
python3 -m pip install py2app
```- **(Дополнительно) Если НЕТ** setup.py в директории проекта, выполнить его генерацию:
```bash
py2applet --make-setup YandexMusicApp
```
- Выполнить сборку app пакета:
```bash
python3 setup.py py2app --dist-dir=YandexMusicAppBuild
```будет создан привычный YandexMusicApp.app пакет в поддиректории YandexMusicAppBuild этого проекта, который можно
переместить в Программы и запускать из Launchpad.### 2. Сборка через [Nuitka](https://github.com/Nuitka/Nuitka)
- Выполнить сборку исполняемого bin файла:
```bash
python3 -m nuitka --enable-plugin=pyqt5 --macos-create-app-bundle --macos-app-icon=icon.icns --output-dir=YandexMusicAppBuild YandexMusicApp.py
```будет создан исполняемый YandexMusicApp файл в поддиректории YandexMusicAppBuild этого проекта.
___
## Сборка для Ubuntu и подобных
**ОДИН ВАРИАНТ**
### Сборка через [Nuitka](https://github.com/Nuitka/Nuitka)
- Установить инструменты разработки через apt (apt-get):
```bash
sudo apt install build-essential
```
```bash
sudo apt install python3.10-dev
```- Выполнить установку дополнительного пакета через apt (apt-get) (актуально на Ubuntu):
```bash
sudo apt-get install python3-pyqt5.qtwebengine
```- Выполнить сборку исполняемого bin файла:
```bash
python3 -m nuitka --enable-plugin=pyqt5 --linux-icon=icon.png --output-dir=YandexMusicAppBuild YandexMusicApp.py
```будет создан исполняемый YandexMusicApp.bin файл в поддиректории YandexMusicAppBuild этого проекта.
___
# На этом всё 😉
___
___### Дополнительно
#### Универсальный вариант (для linux и mac) через [pyinstaller](https://github.com/pyinstaller/pyinstaller)
_Этот способ не советую. Программа может не запуститься. Оставляю этот вариант для справки._
- Выполнить установку pyinstaller через pip:
```bash
python3 -m pip install pyinstaller
```
- Запустить сборку проекта:
```bash
pyinstaller --onefile YandexMusicApp.py
```будет создан исполняемый YandexMusicApp файл в поддиректории dist этого проекта.
*
* На macOS можно создать и app пакет:```bash
pyinstaller --noconsole -i icon.icns YandexMusicApp.py
```___
#### Запуск через интерпретатор Python
- Просто запустить через python интерпретатор:
```bash
python3 YandexMusicApp.py
```