2016-10-02 6 views
1

Я заметил, что многие потоковые веб-сайты (такие как Spotify) защищают свой контент от загрузки, генерируя одноразовый URL-адрес «один раз».Захват URL-адреса канала перед запуском браузера

Для начала, если я потоплю песню в Spotify web player, я могу легко найти URL-адрес потока. Однако этот url можно использовать для загрузки песни только один раз. Поэтому после того, как браузер начнет загружать и перетаскивать песню, url становится бесполезным, и я больше не могу использовать его для потоковой передачи или загрузки песни снова.

В Spotify, в частности, каждый раз, когда я играю песню, браузер получает немного другой URL, чтобы поток:

  1. http://audio-mp3-fa.spotify.com/mp3enc/02892876c9ad7f9cccb52ca2d12b388e98b17bad?1475406013_tS4yagnyzDiB2zH3KPTcZO+J5kZRDlNMXo1HC8wjomk=

  2. http://audio-mp3-fa.spotify.com/mp3enc/02892876c9ad7f9cccb52ca2d12b388e98b17bad?1475406084_qZXXUSrECUgHQxBTHfYBdI0v3KFP/JRbfOE14myuxBY=

Эти два URLs принадлежат к одному файлу, но каждый имеет разные параметры GET, которые представляют собой уникальный URL, который мы можем использовать только один раз. Чтобы получить доступ к файлу (потоку или загрузить его), мы должны получить новый URL-адрес с новыми параметрами GET.

Теперь у вас возник вопрос: есть ли способ захватить URL-адрес потока до браузера начинает его загружать? (Таким образом, URL-адрес не становится бесполезным, и мы все еще можем загрузить файл).

Спасибо :)

+0

Кто-нибудь? ........... –

ответ

0

вы можете захватить/сгенерировать ссылку для загрузки с их WebSocket
и вы можете легко загрузить файл, но он не будет работать для вас, потому что он зашифрован и для расшифровки вам нужен Key и Offset файла для его расшифровки.
Надеюсь, он вам поможет.

+0

Спасибо за ваш ответ. Это было действительно полезно. У меня все еще есть два вопроса относительно вашего ответа: 1. Доступны ли параметры ключа и смещения? Как я могу их открыть? 2. Как только у меня есть ключ и смещение зашифрованного файла, как я могу использовать эти данные для дешифрования файла? –

+0

Да, вы можете получить ключ и смещение файла из WebSocket (см. Раздел ws в инструменте отладки хром), тогда вам нужен секретный ключ, который доступен в их Player.swf (который вы можете получить из Play.spotify.com и декомпилируйте его, чтобы получить этот ключ). После этого вам нужен Алгоритм, который снова доступен в Player.swf, но вы можете его найти (версия Node.JS) на Github :) –

+0

Я не совсем понял, как получить частный ключ. Где вы находите player.swf? Как вы можете его декомпилировать? И что такое node.js? –

 Смежные вопросы

  • Нет связанных вопросов^_^