СоХабр закрыт.

С 13.05.2019 изменения постов больше не отслеживаются, и новые посты не сохраняются.

| сохранено

H Как скачать любое аудио с любого сайта? Есть решение в черновиках



Философия


Как часто вам приходилось искать понравившуюся музыку в интернете? Именно ту, которую вы слышали на любимом сайте (социальные сети, музыкальные порталы). Очень часто бывает, что её в другом месте просто нет.
Матерые «искатели» скажут, что это не так. Но давайте рассмотрим среднестатистического пользователя, чьи знания технологий не позволяют оперировать «копанием» в исходном коде страницы или кэше.

Так получилось, что большинство моих друзей именно такие пользователи. Вот для них и было решено написать данное расширение Хрома (и ему подобных:)).

Что умеет


  • Скачивание любого аудиофайла с любого сайта (mp3, wav)
  • Правильно определяет оригинальное название
  • Показывает длительность, размер и битрейт
  • Скачивание на той же странице, что и трек (без редиректа)
  • Предпрослушивание файла

Попробовать расширение из магазина Chrome



Немного картинок и видео:













Буду рад здоровой критике. Надеюсь, кому-то будет полезно данное расширение.
Если заинтересовало, то в ближайшее время опубликую обзор по исходникам в другом хабе и выложу на github.
Также в планах портировать в Firefox и IE.

P.S > Возможность скачивания видео тоже есть, но в данный момент отключена (есть небольшие проблемы с потоковым видео).

Ссылка на расширение

комментарии (21)

0
easyman ,  
А плейлистами или альбомами скачивать умеет, как Yandex Music Fisher?
0
antonre ,  
Пока нет, но в планах есть)
0
rznELVIS ,  
а можно пару слов о том как это утроено? как музыка вытаскивается, как форматируется и все такое. было бы очень интересно.
+2
antonre ,  
Да, конечно, в ближайшее время напишу отдельную статью
+1
omickron ,   * (был изменён)
Очень полезно, спасибо.

Подозреваю, расширение мониторит кэш на предмет появления в нём медиа файлов.
Это позволяет определять все аудио характеристики файла.
Любопытно, откуда берётся название. Возможно, из тегов?
Тогда это объясняет, почему в Яндекс.Музыке имя аудио определить не удалось.

image
0
antonre ,  
Да, вы правы, на данный момент используются теги. Однако, подход не универсален (их можно удалить)
+1
omickron ,  
Ещё фидбек — панелька с информацией может закрывать нужную часть страницы. Даже в свёрнутом виде.
На мой взгляд, лучший способ оповещать пользователя о доступных треках — как это делает AdBlockPlus — в иконке расширения.
Клик по иконке — открывается панель со списком доступных файлов.
+1
antonre ,  
Спасибо, поправим
0
UksusoFF ,  
Если бы музыканты знали что такое теги и нормально бы их сохраняли в mp3… то пускай как угодно называется файл. Обычно когда скачиваешь с ВК приходится делать Название → Тег, а не наоборот.
0
Reeze ,   * (был изменён)
На любимом радио сразу показал файл и дал возможность скачать. Отлично.
0
antonre ,  
Спасибо)
0
Stalker_RED ,  
На вебораме распознал, но некоторые треки дублирует — один вариант без названия, другой нормально, например. На radioparadise.com вообще ничего не видит, видимо стримы не распознает.
0
antonre ,  
С потоковым аудио/видео пока есть проблемы, но думаю решаемо
0
sindzicat ,  
А для Firefox будет?)
0
antonre ,  
Да, будет)
0
Overrided ,  
Интересный естеншн. Хотя, лично я уже несколько лет использую Save From Net Helper.
Полезная, гибкая штука с огромным списком сайтов для загрузки.
У Вашего плагина уже есть плюс — он спокойно устанавливается из магазина без всякиx Tampermonkey. «Добейте» видео-стрим, и с удовольствием буду юзать ваш плагин)
P.S. — пару раз не показал битрейт трека на vk — или я что-то делал не так?)
0
antonre ,  
Возможно не удалось правильно считать данные о файле. А со стримом разберемся (хотя у гугла есть особое отношение к расширениям, качающим стрим, особенно с ютюб)
0
Goodkat ,  
Не с любого. С Napster/MTV не качает.
–1
nizulko ,  
Не дерзи.
0
aeowka ,  
А есть плагины, которые с youtube вытягивают аудио?
0
begemot_sun ,  
> Could not install package: 'UTILITY_PROCESS_CRASHED_WHILE_TRYING_TO_INSTALL'. Could not install package because a utility process crashed. Try restarting Chrome and trying again

Только у меня такое выплыло? (Версия 41.0.2272.76 Ubuntu 14.04 (64-bit))