Python library for VK Audio (API)
Project description
VKpyMusic
Click here to switch to English version
VKpyMusic - это библиотека Python, которая предоставляет простой интерфейс для взаимодействия с API музыкального сервиса ВКонтакте (VK). Библиотека позволяет разработчикам легко выполнять операции, связанные с музыкой и другими функциональными возможностями, доступными через VK API.
Установка
Библиотека протестирована с Python 3.8-3.13.
-
Установка через pip (менеджер пакетов Python):
$ pip install vkpymusic
-
Установка из исходников (требуется
git):$ pip install git+https://github.com/issamansur/vkpymusic.git
Рекомендуется использование первого варианта.
Использование
Чтобы начать работу с VKpyMusic, вам понадобится действительный токен доступа к VK и пользовательский агент, который предоставляет доступ к API музыкального сервиса VK. Но если у вас их нет, ничего страшного - у нас есть свой собственный класс для их получения.
Использование класса TokenReceiver для получения токена и юзер-агента
Для получения токена VKpyMusic задействует класс TokenReceiver, который отвечает за выполнение авторизации с использованием доступных логина и пароля. Он предоставляет методы для обработки captcha, двухфакторной аутентификации и различных сценариев ошибок. Подробнее о работе класса здесь.
from vkpymusic import TokenReceiver
login = input(" Enter login: ")
password = input("Enter password: ")
tokenReceiver = TokenReceiver(login, password)
if tokenReceiver.auth():
print(tokenReceiver.get_token())
tokenReceiver.save_to_config()
Результат:
Enter login: +...........
Enter password: .........
SMS with a confirmation code has been sent to your phone! The code is valid for a few minutes!
Code: 277765
Token was received!
Token was saved!
Использование класса Service
-
Для начала работы с аудио вы можете воспользоваться токеном, сгенерированным в прошлом пункте с помощью класса
TokenReceiver:from vkpymusic import Service service = Service.parse_config()
-
Или указать свой токен и юзер-агент:
service = Service("<your_client>", "<your_token>")
Подробнее о работе класса здесь
Получить информацию о песнях текущего пользователя
Следующий код пытается получить 10 треков пользователя. Обратите внимание, что в качестве первого аргумента принимается только ID пользователя (не username)! Если аудиозаписи пользователя закрыты, вызывается исключение VkApiException: VK API Error 201: Access denied.
user_songs = service.get_songs_by_userid(123456789, 10)
Поиск треков по запросу
songs = service.search_songs_by_text("Radiohead no surprises", 5)
Получить популярные треки
songs = service.get_popular(count=50, offset=0)
Сохранить трек локально
songs = service.search_songs_by_text("Radiohead no surprises", 5)
Service.save_music(songs[0])
# или
service.save_music(songs[0])
Полный пример
from vkpymusic import Service, TokenReceiver
login = input(" Enter login: ")
password = input("Enter password: ")
tokenReceiver = TokenReceiver(login, password)
if tokenReceiver.auth():
print(tokenReceiver.get_token())
tokenReceiver.save_to_config()
service = Service.parse_config()
tracks = service.search_songs_by_text('Radiohead no surprises')
Service.save_music(tracks[0])
Документация
Детальная документация и примеры использования для VKpyMusic находится на официальной странице GitHub:
https://github.com/issamansur/vkpymusic
https://issamansur.github.io/vkpymusic/
Вклад и поддержка
Если у вас есть какие-либо предложения по улучшению VKpyMusic или вы обнаружите какие-либо проблемы, пожалуйста, создайте новую проблему на странице проекта GitHub. Мы приветствуем ваши запросы на исправления и готовы помочь вам с любыми проблемами, с которыми вы столкнетесь.
Лицензия
VKpyMusic распространяется под лицензией MIT. За более детальной информацией о лицензии обратитесь к файлу LICENSE.
Авторы
VKpyMusic разрабатывается @issamansur или/и командой 'EDEXADE, inc.'
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vkpymusic-4.0.0.tar.gz.
File metadata
- Download URL: vkpymusic-4.0.0.tar.gz
- Upload date:
- Size: 23.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.4.1 CPython/3.13.3 Darwin/25.3.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f7a3c8e5993f8dc279d74e16724719b288d724275de40e8d42a74f2aa40249a0
|
|
| MD5 |
0a5ab1e83d509fe4a21e85acb68c29e8
|
|
| BLAKE2b-256 |
a4e19e402cab8280181efc745517235ce277e83220f61726a4ae8510ad608ac1
|
File details
Details for the file vkpymusic-4.0.0-py3-none-any.whl.
File metadata
- Download URL: vkpymusic-4.0.0-py3-none-any.whl
- Upload date:
- Size: 28.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.4.1 CPython/3.13.3 Darwin/25.3.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a729ff5665e5a20fe79f300f5a7701b8a7728f65ffefe5568ed5eb6eff3477b8
|
|
| MD5 |
7dd14bfb764deef6248158890afe8e0b
|
|
| BLAKE2b-256 |
b466fe40353856b4489f5b00ed5a490b2617b041eedfb469eea0a421984bdb70
|