vodka2 / vk-audio-token Goto Github PK
View Code? Open in Web Editor NEWLibrary that obtains VK tokens that work for VK audio API. Библиотека для получения токена VK, подходящего для Audio API.
Home Page: https://vodka2.github.io/vk-audio-token/
Library that obtains VK tokens that work for VK audio API. Библиотека для получения токена VK, подходящего для Audio API.
Home Page: https://vodka2.github.io/vk-audio-token/
Доброго времени суток, возникла такая проблема, раньше при использовании кода vk official получал список своих аудио с нормальным видом ссылок на mp3, теперь же они такие https://cs1-65v4.vkuseraudio.net/p18/c2b37b04f8f/f30851a0e61d4d/index.m3u8?extra=mKaYXiMlLR4Nau5Pp1Rtb29K1reUga0MzMNjoAQ1flY42A_0KHDjJ6hoTBUbPPpvIiSgWyHHJ2OhP0WYYiO2gd8pfOK50ZUQcTm36qvpqcQeyP7YnQVZhIUNG--iHasqZVicwPj8_Zy44e87NOgny0xN
как их можно расшифровать?
Submit package to composer
php src/cli/vk-audio-token.php -m log pass
PHP Fatal error: Uncaught Error: Call to undefined function Vodka2\VKAudioToken\curl_init() in /root/vk-audio-tokens/src/Vodka2/VKAudioToken/CommonParams.php:27
Stack trace:
#0 /root/vk-audio-tokens/src/cli/vk-audio-token.php(114): Vodka2\VKAudioToken\CommonParams->__construct()
#1 {main}
thrown in /root/vk-audio-tokens/src/Vodka2/VKAudioToken/CommonParams.php on line 27
Пробую получить токен, получилось только с example_microg.
example_droidguard_str.php выдает
TokenException: Token was not refreshed, tokens are the same
example_vkofficial.php выдает токен, но при попытке его использовать получаю ошибку
User authorization failed: You should specify sig param for nohttps requests (scope contain nohttps)
токен example_microg работает, показывает аудио в аттачментах постов со стены, но вызовы audio.get и audio.GetAlbums возвращают пустой список для сообщества. Для пользователя audio.get возвращает ссылки на https://vk.com/mp3/audio_api_unavailable.mp3
Это так и должно быть (вконтакте уже окончательно все прикрыли), или у меня в коде что-то не так?
Здравствуйте. Я понемногу пишу библиотеку для 100% доступа ко всем методам user api vk. Реализовал почти все методы. Камнем преткновения для меня стало получение refreshed token. Дело в том, что пишу я на python и никак не могу освоить php. Возможно вы подскажите мне как получить receipt именно на python. Буду вам очень признателен
Всем привет, перестали играть треки как от кейт мобайл так и от оф.андроид ,играют некоторые треки ,а часть нет, никто не в курсе в чем проблема?
Кто в курсе как теперь можно скачивать треки вк?
Добрый день. Пытаюсь получить токен из примера следующим образом:
php example_microg.php login pass GET_CODE
но в ответ получаю ошибку:
PHP Fatal error: Uncaught Vodka2\VKAudioToken\TokenException: Two factor auth is required.
Не совсем понятно, что делать на этом этапе. Пробовал перейти в браузере по redirect_uri, но вк пишет, что сессия устарела. Что я делаю не так?))
С паролем приложения разумеется проблем нет, но хочется использовать авторизацию по обычному паролю тоже.
Привет, а через муз прогу токен идет капча? И как с вами связаться
Здравствуйте, у вас работает скрипт ? не могу получить токен
{"response":{"count":1,"items":[{"id":1,"owner_id":100,"artist":"и в официальных приложениях ВКонтакте","title":"Аудио доступно на vk.com","duration":25,"date":1481906888,"url":"https://vk.com/mp3/audio_api_unavailable.mp3"}]}}
Здравствуйте, подскажите какая команда если не через кейт мобайл ,а через оф. вк(example_vkofficial)
Hey,
Do you know why tokens don't refresh? Is it because of the fixed check-in token?
Uncaught Vodka2\TokenException: Token was not refreshed, tokens are the same in
Как сейчас расшифровывать ссылки на трек?
Как теперь получить текст песен? lyrics_id = 1 у всех треков где есть текст
Успешно получаю токен, но при попытке вызвать, например, метод audio.get возвращает только одно аудио - https://vk.com/mp3/audio_api_unavailable.mp3
Пробовал даже сделать свои gms credentials, ошибка не исчезает.
код:
$ curl "https://api.vk.com/method/audio.get?v=5.116&access_token=MYTOKEN"
{"response":{"count":1,"items":[{"id":1,"owner_id":100,"artist":"и в официальных приложениях ВКонтакте","title":"Аудио доступно на vk.com","duration":25,"date":1481906888,"url":"https://vk.com/mp3/audio_api_unavailable.mp3"}]}
gms получал через android-эмулятор memu.
Всем привет! Пробую получить список треков пользователя. Токен получил из примера https://github.com/vodka2/vk-audio-token/blob/master/src/examples/example_vkofficial.php.
По документации использую пример https://vodka2.github.io/vk-audio-token/method/audio_get
В ответ приходит
{
"response": {
"count": 1,
"items": [
{
"id": 1,
"owner_id": 100,
"artist": "\u0438 \u0432 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0445 \u0412\u041a\u043e\u043d\u0442\u0430\u043a\u0442\u0435",
"title": "\u0410\u0443\u0434\u0438\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e \u043d\u0430 vk.com",
"duration": 25,
"date": 1481906888,
"url": "https:\/\/vk.com\/mp3\/audio_api_unavailable.mp3"
}
]
}
}
В чем может быть проблема?
Добрый день. Не которые полученные токены выдают error_code = 25 error_msg = 'Token confirmation required' при запросе audio.get
Описания ошибки в vk нет. Как противодействовать - непонятно. Возможно, вы что-то знаете про нее. Возможно ли, что это что-то на этапе получения токена надо дополнительно сделать?
Как известно, ссылки на музыку привязаны к IP юзера, который их запрашивал. Есть необходимость использовать эти ссылки на фронте, получая сами ссылки на бэкенде (соответсвенно IP фронта и бэка разные). Есть ли возможность каким то образом перекодировать ссылку для нужного IP?
Добрый день Я использую для генерации токенов example_vkofficial.php. Од вчера посыпались ошибки
Error extra: (object) array(
'error' => 'need_captcha',
'captcha_sid' => '805796598930',
'captcha_img' => 'https://api.vk.com/captcha.php?sid=805796598930',
возможна ли к прикрутить https://rucaptcha.com/ ?
Доброго дня, подскажите, функция .m3u8 to .mp3, еще работоспособна? Не силен в php к сожалению, но из тех попыток что я пробовал, с ссылкой вида .m3u8 конвертация в mp3 не удалась.
Мне приходит из апи список треков моего аккаунта. в каждом owner_id это посути мой айди и id - тоесть айди трека в моих теках. я использую эти два параметра для того что бы удалить трек. Но что бы добавить обратно нужен owner_id владельца и айди трека в его треках как я понимаю, но у меня нету их, как быть?
{
"artist": "soviss",
"id": 456239865,
"owner_id": 316071885,
"title": "kitty phonk",
"duration": 90,
"access_key": "952b413c22d3d52279",
"ads": {
"content_id": "316071885_456239865",
"duration": "90",
"account_age_type": "3",
"puid22": "18"
},
"is_explicit": true,
"is_focus_track": false,
"is_licensed": true,
"track_code": "c32ed678pHmn9G8hYCkdKgLrVcIJFpyTh8f5fT65SNQXAxLbrZvOEqToCuXsw70bzA-rIz0W",
"url": "https://cs25-1v4.vkuseraudio.net/s/v1/ac/XVJsjVrmaQHGSZYSebRxt6KqxPzWLy5y4wdHB-ZZAHQqQ_ScG6MjSGHmFkpf-p4wWinHxG1X7lDu_xOuNK2jLHFgaL0tARe-rlR1aX9SDf8dAl79xjp9p3ldFQn-jhXWvu33gKNRuFEMZzFSzmzQQBrk2y-X-OH38G6fjvMx8Fv8oLM/index.m3u8",
"date": 1688029997,
"album": {
"id": 14241395,
"title": "kitty phonk",
"owner_id": -2000241395,
"access_key": "94883c39af63b8aea0",
"thumb": {
"width": 300,
"height": 300,
"photo_34": "https://sun25-1.userapi.com/impf/VISNEyjchah0kyNI__bbZ1azg1a9jrdw-LMehQ/Wkj2j3hpnKk.jpg?size=34x34&quality=96&sign=c0d953f58cacb95d8c9d188411f3766c&c_uniq_tag=jZo5y7IbbB-IfHEPoHKLEobYz0l7Ke0V3-pljq3D16o&type=audio",
"photo_68": "https://sun25-1.userapi.com/impf/VISNEyjchah0kyNI__bbZ1azg1a9jrdw-LMehQ/Wkj2j3hpnKk.jpg?size=68x68&quality=96&sign=8cd639c4d4d2d7bc87ee5da9ac8efbd0&c_uniq_tag=UsVTn-k8S_l1IooodMXHkwpN4JHAIPwtX7kNMmGuz6k&type=audio",
"photo_135": "https://sun25-1.userapi.com/impf/VISNEyjchah0kyNI__bbZ1azg1a9jrdw-LMehQ/Wkj2j3hpnKk.jpg?size=135x135&quality=96&sign=04c285d213f716c4599c022835232a7b&c_uniq_tag=pn7OS76kcyC22OHXGUl1dColwZ-ZTkr0ELu8nemcf3c&type=audio",
"photo_270": "https://sun25-1.userapi.com/impf/VISNEyjchah0kyNI__bbZ1azg1a9jrdw-LMehQ/Wkj2j3hpnKk.jpg?size=270x270&quality=96&sign=72795631d0dd15d42f2f5a27f201fdd1&c_uniq_tag=5gb1mDMv9FZSvjrVhFftpgCIJjK_qDtH_LOh_jEb-Go&type=audio",
"photo_300": "https://sun25-1.userapi.com/impf/VISNEyjchah0kyNI__bbZ1azg1a9jrdw-LMehQ/Wkj2j3hpnKk.jpg?size=300x300&quality=96&sign=d367bf799cdeddc18e6020f8efe8a3ad&c_uniq_tag=EIwLWhxkZgtzgTaOqHVbHTwalFqNtU9jXNzboOdNL2k&type=audio",
"photo_600": "https://sun25-1.userapi.com/impf/VISNEyjchah0kyNI__bbZ1azg1a9jrdw-LMehQ/Wkj2j3hpnKk.jpg?size=600x600&quality=96&sign=6c763aa4623e4ac79ff2e51846624506&c_uniq_tag=DrohZl75T7bHi4kb4_qro0wOggD6MObo3Ksyk1MATr8&type=audio",
"photo_1200": "https://sun25-1.userapi.com/impf/VISNEyjchah0kyNI__bbZ1azg1a9jrdw-LMehQ/Wkj2j3hpnKk.jpg?size=1184x1184&quality=96&sign=8a69bc54be6c74f17ecb9e6a9f89c4ae&c_uniq_tag=jz_VR6MlmtidZpz9v_XnM9a-SAB6gm0XkjPG40P3E-8&type=audio"
}
}
"main_artists": [
{
"name": "soviss",
"domain": "7941333661859270614",
"id": "7941333661859270614"
}
],
"short_videos_allowed": false,
"stories_allowed": false,
"stories_cover_allowed": false
}
how get non secure access_token without &sig official token reciver?
Получить список из плейлиста можно при помощи audio.get
. Но когда пытаешься так сделать с альбомом, author_id
которого начинается с минуса, пишет ошибку: Access denied: no access to this group
Вот такая штука. Не разрешает авторизоваться. Присылает url, но переходить по нему бесполезно. Может как-то по другому надо настраивать аккаунт? Или как-то обыграть эту штуку?
docker run -t vk-audio-tokens:latest php src/cli/vk-audio-token.php -m <login> <pass>
Getting new android checkin auth data...
Receiving token...
Fatal error: Uncaught Vodka2\VKAudioToken\TokenException: Can't obtain token. Error extra: (object) array(
'error' => 'need_validation',
'validation_type' => '2fa_app',
'validation_sid' => '2fa_10601533_2685278_698885553331113785',
'phone_mask' => '+456 *** * ** 78',
'error_description' => 'open redirect_uri in browser [5]. Also you can use 2fa_supported param',
'redirect_uri' => 'https://m.vk.com/login?act=authcheck&api_hash=49f6111d8333222406',
) in /src/Vodka2/VKAudioToken/TokenReceiver.php:42
Stack trace:
#0 /src/Vodka2/VKAudioToken/TokenReceiver.php(24): Vodka2\VKAudioToken\TokenReceiver->getNonRefreshed()
#1 /src/cli/vk-audio-token.php(142): Vodka2\VKAudioToken\TokenReceiver->getToken()
#2 {main}
thrown in /src/Vodka2/VKAudioToken/TokenReceiver.php on line 42
Добрый день!
Отличная работа, очень круто!
Подскажите пожалуйста где можно посмотреть все методы для audio куда можно слать запросы и какие параметры они принимают? Например как получить песни по жанру? или как получить список исполнителей и их песни?
Заранее огромное спасибо.
Добрый день. Вы не тестировали токены на лимиты? Какие есть ограничения при их использовании? По запросам в секунду, по запросам в сутки и т.п. В бан не отправляют аккаунты при активном использовании методов audio?
здравствуйте. не выдает запросы с кириллицей.
запрос:
$query = "ЛАУД";
curl_setopt(
$ch,
CURLOPT_URL,
"https://api.vk.com/method/audio.search?access_token=".TOKEN.
"&q=".urlencode($query)."&performer_only=0&count=10&v=5.95"
);
выдает случайные результаты, которые вообще не подходят под запрос
Hi vodka2,
at first, great work :-)
i've used your script "vk-audio-token.php" to gather a vk audio api token.
When i use this token to query the vk audio api, the api reply with an error code:
"error_code": 25,
"error_msg": "Token confirmation required",
I don't passed an gms_id and gms_token to the script. I've seen in your code both will be generated by the class AndroidCheckin if they are not passed to the script.
Do you have any idea why this happens?
C:\WINDOWS\system32>C:\php\php.exe C:\vk-audio-token-master\vk-audio-token-master\src\cli\vk-audio-token.php номер_вк пароль_вк
"C:\php\php.exe" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
В composer стоит старый код
Когда у тебя подключен 2FA, то первый вход выбивает ошибку, со второго уже можно зайти при помощи резервного кода или Google Auth, но смс так и не приходит
Hey, we use this method several years but few weeks ago method stop working. We can still get a token but it is not working.
Any solutions?
Getting new android checkin auth data...
Receiving token...
PHP Notice: Undefined property: stdClass::$error_description in C:\vk-audio-token-master\src\Vodka2\VKAudioToken\TokenException.php on line 18
PHP Fatal error: Uncaught Vodka2\VKAudioToken\TokenException: Can't obtain token. Error description: Unknown error in C:\vk-audio-token-master\src\Vodka2\VKAudioToken\TokenReceiver.php:38
Stack trace:
#0 C:\vk-audio-token-master\src\Vodka2\VKAudioToken\TokenReceiver.php(22): Vodka2\VKAudioToken\TokenReceiver->getNonRefreshed()
#1 C:\vk-audio-token-master\src\cli\vk-audio-token.php(142): Vodka2\VKAudioToken\TokenReceiver->getToken()
#2 {main}
thrown in C:\vk-audio-token-master\src\Vodka2\VKAudioToken\TokenReceiver.php on line 38
I'm trying to get artist page using:
//Credentials obtained by example_vkofficial.php script
define('TOKEN', "myToken");
define('USER_AGENT', SupportedClients::VkOfficial()->getUserAgent());
$ch = curl_init();
curl_setopt($ch, CURLOPT_HTTPHEADER, array('User-Agent: ' . USER_AGENT));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
/* Artisit*/
curl_setopt(
$ch,
CURLOPT_URL,
"https://api.vk.com/method/catalog.getAudioArtist"
);
curl_setopt(
$ch,
CURLOPT_POSTFIELDS,
"v=5.116" . // Api Version
"&https=1" .
"&ref=search" .
"&extended=1" .
"&lang=pt-br" .
"&count=5" .
"&need_blocks=0" .
"&artist_id=mkjay" .
"&access_token=" . TOKEN
);
$artist = json_decode(curl_exec($ch));
$section_id = $artist->response->catalog->sections[0]->id;
$artist_title = $artist->response->catalog->sections[0]->title;
if ($artist_title != "") {
curl_setopt(
$ch,
CURLOPT_URL,
"https://api.vk.com/method/catalog.getSection"
);
curl_setopt(
$ch,
CURLOPT_POSTFIELDS,
"v=5.116" . // Api Version
"&https=1" .
"&ref=search" .
"&extended=1" .
"&lang=en" .
"&count=5" .
"&start_from=0" .
"&next_from=1" .
"&need_blocks=0" .
"§ion_id=" . $section_id .
"&access_token=" . TOKEN
);
$data = json_decode(curl_exec($ch));
/* Example of getting mp3 from m3u8 url */
function getMp3FromM3u8($url)
{
// Not a m3u8 url
if (!strpos($url, "index.m3u8?")) {
return $url;
}
if (strpos($url, "/audios/")) {
return preg_replace('~^(.+?)/[^/]+?/audios/([^/]+)/.+$~', '\\1/audios/\\2.mp3', $url);
} else {
return preg_replace('~^(.+?)/(p[0-9]+)/[^/]+?/([^/]+)/.+$~', '\\1/\\2/\\3.mp3', $url);
}
}
$allAudios = $data->response->audios;
foreach ($allAudios as $audio) {
$audio->url = getMp3FromM3u8($audio->url);
}
/* Response with mp3 urls */
echo json_encode($data, JSON_PRETTY_PRINT) . "\n\n";
}
When I run this code on local php server everything its good!
but when i try to run this code in hostinger server (hostinger.com)
the URL audio give to me 404 page
Example response local:
"is_licensed": true,
"track_code": "28646071UzEmKpXVuGVFnfNJbLs8QoTdes4kxHXlBhZuKHhMAaKD_rJD",
"url": "https://cs9-13v4.vkuseraudio.net/p1/9698db4d88d42e.mp3",
"date": 1570532915,
Example response Hostinger:
"is_licensed": true,
"track_code": "27f63f55WbxlxswQK8Yp535KdYNFJEILQJ3SyOVQFLzAvxmdbn-Nc_Gv",
"url": "https://cs9-13v4.vkuseraudio.net/p1/089fd329d9d28d.mp3",
"date": 1570532915,
The Host Server location is EUA
Why this happens ?
All the best!
При запросе с серверов европы, некоторые треки отдаются без url и с ключем "content_restricted":
"id": 456239018, "owner_id": 539314228, "artist": "Artik & Asti", "title": "", "duration": 217, "date": 1554462845, "url": "", "is_hq": true, "track_genre_id": 14, "access_key": "692fa93bec77d87051", "content_restricted": 6 }
С тем же access_key из РФ с теми же треками все ок. Пробовал получать access_key с машины в европе, результат тот же. Хотя из приложения Kate mobile c VPN треки работают. В чем может быть проблема? Спасибо
Добрый день!
Заметил, что api возвращает массив аудио, но далеко не везде есть URL на mp3, хотя в официальных клиентах и Kate аудио доступны. Использую авторизацию и user-agent Kate mobile. Проблема наблюдается со всеми методами.
Это проблема со стороны вк или я как-то неправильно обращаюсь? Есть ли решение?
Здравствуйте, можно ли обойти капчу у вк
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.