LINUX.ORG.RU

vksearch - поиск и загрузка музыки из CLI

 


6

1

по просьбам трудящихся :)

/* БАГРЕПОРТЫ И ФИЧРЕКВЕСТЫ ПРИВЕТСТВУЮТСЯ! */

многие пользователи ЛОРа пользовались моей поделкой для поиска/прослушивания музыки из ВК прямо из CLI. так вот: на днях вк видимо отключил своё старое API и скрипт перестал работать :(

пришлось переписать скрипт на новый ляд на новую версию API (v3.99), а заодно почистить немного код и выпилить скачивание альбомов/дискографий в отдельный скрипт

changelog:

[+] Полная поддержка Cygwin
[+] Используем VKApi v3.99
[*] Теперь скрипт загрузки дискографий и альбомов идёт отдельно

[+] Добавлен цветной вывод. Отключается переменной cfg_color_output

[*] Исправления для поиска плейлиста по ID пользователя

[+] Добавлена функция "Рекомендации" из ВК. 
Использование: vksearch --get-recommends <ID>

[+] Добавлена функция "Предложения". Можно ввести имя исполнителя/название трека, чтобы получить рекомендуемые композиции.
(в отличие от "get-recommends", используется last.fm вместо вк)
Использование; vksearch --suggest Within Temptation
Также возможно получение рекомендаций по вашему плейлисту ВК.
Использование: vksearch --suggest --user-playlist <ID>

[+] --user-playlist теперь принимает несколько ID
[+] поддержка дозагрузки/уже загруженные песни пропускаются.
[*] исправлена загрузка песен со спецсимволами типа * ? < > '   " и пр.

[+] теперь  для --user-playlist по-умолчанию берутся все треки, но нужное количество по-прежнему можно задать через --count

[*] исправлена загрузка файлов с омг длинными именами, типа:
"Краски - ... а девочка танцует, девочка смеется.. она тебя забудет, и больше не вернется... а девочка танцует КОРОЛЕВА НОЧИ... она тебя не любит, она тебя не хочет..... "
Ограничение на имя файла составляет 70 символов.

[+] добавлена работа с offset. Теперь количество песен в запросе на поиск не ограничено (раньше было ограничение: 300)

Релиз.

для тех, кто не знаком с скриптом:
VKSearch 1.0: Поиск, прослушивание и закачка музыки с сайта VKontakte.ru!
Для работы скрипта не требуется авторизация ВКонтакте. by snoopcatt, © 2010-2013. Лицензировано под GNU GPL v2.
* Использование: vksearch [опции] запрос
        --help: показать это сообщение и закрыть vksearch

        --user-playlist: использовать плейлист пользователя(ей) по ID
        --search: использовать поиск по всей коллекции ВК
        --get-recommends: рекомендации пользователя по ID (используется ВК)
        --suggest: рекомендации пользователя по ID или запросу (используетcя LastFM)

        --play: проиграть найденный список треков
        --get: скачать найденный список треков
        --play-one: проиграть один из найденных треков
        --get-one: скачать один трек
        --make-playlist: создать плейлист

        --count=N: искать N треков
        --save-to=PATH: сохранять плейлист и треки в указанный PATH
        --write-tags: записывать id3 теги в скачанные треки
        --get-lyrics: скачать текст песни
        --silent: тихий режим


ссылка на гитхаб

Перемещено tazhate из talks

★★★★★

Последнее исправление: snoopcat (всего исправлений: 7)
Ответ на: комментарий от derlafff

да заигнорь ты меня уже, не мучайся

snoopcat ★★★★★
() автор топика
Ответ на: комментарий от Obey-Kun

удаляли-удаляли, а что толку?
народ еще заливает.
бтв, у меня из 124 треков удалили только 2. добавил точно такие же новые.
брат жив

snoopcat ★★★★★
() автор топика
Ответ на: комментарий от Ttt

За вами уже выехали.

Ты подумай. Если Дуров начнёт санкции против юзеров - не побегут ли они из ВКонтакта? Не станет ли их сложнее контроллировать тогда?

pacify ★★★★★
()
Ответ на: комментарий от lexxus-lex

самые первые версии могли - они гетали хедеры mp3 и информация проверялась ffmpeg'ом

процесс был довольно таки медленный.

в новых версиях вся сортировка доверена втентаклику, т.к. ключ sort=2 обычно выдаёт самые качественные композиции (<320kbps попадаются лишь у самых редких групп)

snoopcat ★★★★★
() автор топика
Ответ на: комментарий от pacify

Так не Дуров санкции будет применять, а Путин и профессиональные копирасты (РАО и РСП там всякие).

Ttt ☆☆☆☆☆
()
Ответ на: комментарий от Ttt

общесистемный впн, впска на какого-то левого человека, а что?

snoopcat ★★★★★
() автор топика

Спасибо за полезную программу. Правда, попсу я не слушаю, а что-то мне нужное могу найти и без ВКонтакта.

pacify ★★★★★
()
Ответ на: комментарий от snoopcat

бтв, у меня из 124 треков удалили только 2. добавил точно такие же новые.

BTW, vksearch --user-playlist twilight_meow утверждает, что

По запросу 145081415 не найдено ни одного трека...

(у других юзеров находит). И, на правах баг-репорта, после работы vksearch в терминале сбиваются цвета.

dexpl ★★★★★
()
Ответ на: комментарий от dexpl

BTW, vksearch --user-playlist twilight_meow утверждает, что

аудио закрыты.

И, на правах баг-репорта, после работы vksearch в терминале сбиваются цвета.

исправлено.

snoopcat ★★★★★
() автор топика
Ответ на: комментарий от Ttt

Хомячки не могут и незакопиращенную музыку найти вне контакта.

Дело не в могут - не могут, а в том, что во вконтакте это удобнее, особенно когда хочется найти какую-то новую для себя музыку. Где ещё есть одновременно 1) такая огромная коллекция 2) соц. фичи или хотя бы много тематических подборок музыки ?

snizovtsev ★★★★★
()
Ответ на: комментарий от snoopcat

аудио закрыты.

Ясно.

исправлено.

Благодарю :)

dexpl ★★★★★
()

Как запускать скрипт? Можно целый пример команды запуска? У меня постоянно «Ошибка: Captcha needed (Код )» возвращает.

hope13 ★★★
()

О я такую штуку, только с гуями и на JS написал

vertexua ★★★★★
()

Спасибо. Редко но нужен

RCV ★★★★
()
Ответ на: комментарий от hope13

слишком много запроса с твоего IP, похоже
если есть акк ВК, попробуй сгенерить новый токен для проверки (как - написано в первых комментах скрипта)

snoopcat ★★★★★
() автор топика

добавлен поиск рекомендуемой музыки двумя способами
1. то, как предлагает вк (необходимо, чтобы у вас была страничка вк и там были добавлены аудиозаписи)
2. вводим название исполнителя и получаем плейлист из рекомендуемых треков. вместо ввода названия исполнителя можно ввести свой ID вк и получить рекомендации по вашему плейлисту.

snoopcat ★★★★★
() автор топика
Ответ на: комментарий от snoopcat
taz@tazwork:/exec$ ./vksearch --user-playlist piskaslona --get --save-to=/home/taz/music
[17:09:14] Добро пожаловать в VKSearch 0.8-rc!
[17:09:14] Загрузка списка треков...
[17:09:15] По запросу 17243445 найдено 124 композиций. Обработка первых 124.
[17:09:15] Начинаю закачку: Sevendust - Nobody Wants It
[17:09:18] Файл Sevendust - Nobody Wants It был загружен!
[17:09:18] Начинаю закачку: Animals As Leaders - On Impulse
^C
taz@tazwork:/exec$ ls /home/taz/music
taz@tazwork:/exec$ 

??? O_o

tazhate ★★★★★
()
Ответ на: комментарий от tazhate

fixed

somewhere /bin # ./vksearch --user-playlist piskaslona --get --save-to=/home/annelin/test/
[15:15:02] Добро пожаловать в VKSearch 0.8-rc!
[15:15:02] Загрузка списка треков...
[15:15:04] По запросу 17243445 найдено 124 композиций. Обработка первых 124.
[15:15:04] Начинаю закачку: Sevendust - Nobody Wants It

somewhere /bin # ls ~/test/
Sevendust - Nobody Wants It.mp3

snoopcat ★★★★★
() автор топика
Последнее исправление: snoopcat (всего исправлений: 3)
Ответ на: комментарий от snoopcat

еще какие-нибудь фичреквесты будут?

Ну, в голову пока ничего не приходит еще.
Спасибо большое!

tazhate ★★★★★
()
Ответ на: комментарий от sh4r4t4n

ну пусть тогда tazhate перенесёт (раз уж он тут мимо ходит), я не против

snoopcat ★★★★★
() автор топика
Ответ на: комментарий от snoopcat
[17:48:40] Начинаю закачку: Shannon Wright/Yann Tiersen - Something to Live For
./vksearch: line 146: Shannon Wright/Yann Tiersen - Something to Live For.mp3: No such file or directory

Bug.

tazhate ★★★★★
()

А я не жаловаться, у меня всё работает. Я просто спасибо сказать. Самый удобный из найденных подобных плееров. Спасибо :)

schizoid ★★★
()

Хотелось бы, что бы количество треков скрипт сам узнавал, а не брал из cfg_search_count='300'. Так же, очень бы хотелось, что бы скрипт повторно не скачивал треки (запустил скрипт, отменил работу скрипта, когда увидел цифру 300, подправил скрипт, запустил снова, а скрипт начал перекачивать всё заново).

sh4r4t4n
()

Блин, скачалось всего 399 треков из 401 и я даже не посмотрел, какие именно не скачались :(

sh4r4t4n
()
Ответ на: комментарий от snoopcat

у меня из 124 треков удалили только 2.

Значит попсу не слушаешь. У других сто из ста попали под удаление. Весь интернет этим плачет

З.Ы слушаю музыку через интернет-радио и YouTube

farzeet ★★
()

Ещё одно пожелание - я тут пытаюсь залить скаченное на samba и некоторые треки выдают ошибку из-за символа вопроса в названии. Было бы полезно добавить какой-нибудь параметр, что бы тяжёлые для понимания венды символы во время скачивания заменялись хотя бы символом «_».

sh4r4t4n
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.