Как найти поток за Flash Player

322588
Svish

Я смотрю поток Flash. Я могу смотреть один и тот же поток в двух разных проигрывателях (созданных кем-то другим), но мне не нравится ни один из них.

Есть ли способ найти / получить / извлечь прямую ссылку на флеш-поток, в который играют эти два игрока? Чтобы я мог смотреть его с помощью другого плеера?

Редактировать: проигрыватель передает поток RTMP, а не видеофайл FLV.

46
Вы должны быть в состоянии сшить пакет с помощью wireshark (http://www.wireshark.org/download.html), но я уверен, что должен быть более простой способ. С другой стороны, wireshark - отличный инструмент для установки в любом случае. Fake Name 14 лет назад 2
Да, у меня такое чувство, что я просто не могу понять, как его использовать. Svish 14 лет назад 1
Смотрите "Скачать файл FLV с любого видео сайта?" по адресу http://superuser.com/questions/41394/download-flv-file-from-any-video-site Arjan 14 лет назад 0
@Arjan: Это работает, когда есть FLV-файл, который воспроизводится. Не тогда, когда это поток RTMP (насколько я знаю в любом случае). Svish 14 лет назад 0
Чтобы получить URL, я думаю, не имеет значения, является ли это потоком или нет. Но на самом деле, может быть, я слишком быстро проголосовал, чтобы закрыться. Не могу отменить это, хотя; надеясь, что другие не будут голосовать, если это действительно отличается. Arjan 14 лет назад 0
Я смущен, что вы выбрали в качестве окончательного ответа тот, который говорит, чтобы загрузить файл. Если это сделано, в него можно играть многими игроками (о чем вопрос), а также в автономном режиме, без необходимости указывать URL! Я уверен, что весь интерес и голосование по поводу вопроса происходит от **, как найти реальный URL ** часть, которая имеет смысл, только если часть ** download ** оставлена ​​в стороне, хотя, как в моем ответ ниже, простой способ увидеть URL с помощью инструмента, который предназначен для загрузки. cipricus 10 лет назад 0
@cipricus: Вы бы не загружали реальное видео, но затем SWF-файл для декомпиляции и получения URL-адреса потока. Что касается вашей путаницы, я рекомендую вам начать смотреть на временные метки, если вы найдете принятые ответы, которые выглядят немного странно. В этом случае ответ, который я принял, был тем, который дал мне то, что я хотел, вскоре после того, как я задал вопрос. Большинство альтернатив были опубликованы намного позже, а в вашем случае более 4 лет спустя. Я оставляю это как есть, так как это, вероятно, все еще будет правильным, и ответ будет самым «сырым». Если бы я сделал это сейчас, я бы, вероятно, использовал версию Firebug. Svish 10 лет назад 1
Может быть полезно: я заметил, что автор ответа на Firebug использовал слово «иногда» не без причины: я нашел потоки, которые ни Chrome, ни Firebug не отображали их URL, по крайней мере, не там, где указывал бы ответ -, но что DownloadHelper смог ... и т.д. cipricus 10 лет назад 0
У меня недостаточно представителей, чтобы ответить на этот вопрос, но если вы смотрите .swf, размещенный на конкретной платформе прямой трансляции (например, douyu.com), вы можете использовать [streamlink] (https://github.com/). streamlink / streamlink) инструмент командной строки. укажите URL канала и используйте опцию вывода json (`-j`), чтобы получить доступные URL для объекта .swf на этой странице. Пример: `streamlink https://www.douyu.com/AMYL -j`. Таким образом, вы можете легко автоматизировать процесс захвата URL. A__ 6 лет назад 0

7 ответов на вопрос

29
Simon East

Firebug для Firefox и Инструменты разработчика Google Chrome (встроенные в Chrome ) могут отображать каждый HTTP-запрос, выполняемый браузером. Иногда они показывают URL-адреса, такие как эти.

В Firefox установите Firebug (без перезагрузки), запустите надстройку, щелкнув значок ошибки (используйте customize, чтобы сделать его видимым - но это должно быть по умолчанию), запустите поток и в окне Firebug нажмите вкладку Net, а затем All, возможно обновите страницу видео. URL должен появиться при наведении курсора мыши на строку с надписью «GET video», правой кнопкой мыши на URL-адресе и месте копирования.

enter image description here

В Chrome откройте инструменты разработчика, откройте вкладку « Сеть » и начните воспроизведение файла.

Вкладка «Сеть» в инструментах разработчика Google Chrome не поддерживает протоколы, отличные от http (по крайней мере, не rtmp) dvb 11 лет назад 10
@dvb это правда, я тоже сталкивался с тем же Rat-a-tat-a-tat Ratatouille 10 лет назад 0
Как использовать Firebug, чтобы увидеть URL? cipricus 10 лет назад 1
получил его и добавил детали с изображением для Firebug cipricus 10 лет назад 0
9
RJFalconer

Скачайте и декомпилируйте флэш-файл. Источник потока должен быть довольно легко найти.

Возможно, что проигрыватель является общим, а файл / поток, который он воспроизводит, передается как параметр. Grep исходный код веб-страницы для "embed" / "swf" или текста, который находится рядом с Flash-объектом на странице. Затем посмотрите на содержимое «имя параметра» / «значение параметра»

У меня есть только SWF. Там нет сценария или что-то в этом роде. Как вы декомпилируете флэш-файл? Svish 14 лет назад 0
Я бы порекомендовал http://www.showmycode.com/, который является онлайн-декомпилятором SWF, поскольку он более безопасен, чем установка любой из программ из поиска предыдущего комментария: «декомпилировать SWF». Dan D. 12 лет назад 3
Декомпиляция SWF, вероятно, самый трудный способ сделать это. Простое открытие Wireshark показывает все. Brad 11 лет назад 3
6
Segfault

Fiddler2 - отличный инструмент для этого. Подумайте об этом, как Wireshark, но специально для HTTP. Это покажет, что именно делает ваш браузер. Он работает, настроив себя как локальный HTTP-прокси. Направьте ваш браузер на него, и он покажет все выполненные подключения и какие данные передаются.

4
cipricus

As seen from the many answers there must be many ways to do this, but maybe one of the easiest way to go is to take advantage of a Firefox addon like DownloadHelper addon, which has also the advantage of being available on all OSes.

  • Install the Firefox addon DownloadHelper,
  • run the flash stream in Firefox, the DownloadHelper button should start rolling,

(There are different ways to access this feature, but I will mention one that is clearly accessible no matter the configuration, as the addon has settings to hide or show buttons and options)

  • Go to Tools > Video Download Helper (or find is otherwise) > All Actions > [Name of video] > Copy URL.

enter image description here


Some troubleshooting.

Testing such links with VLC I notice that in some cases the player cannot play them or even crashes. But this can be fixed as follows:

The last part of such URLs is something like /video.flv?start=0. Changing that to /video.flv? might make it work.

I discovered this when using the other solution, presented below, Internet Download Manager, in order to capture a such video stream: it displays the link but when trying to select it by clicking on it, IDM selects the URL without the last part start=0 (as seen in the image below). But many URLs can be opened in VLC with that last part too.


In Windows, Internet Download Manager is able to sniff such streams and capture them. Again, I find it easier to use in combination with a Firefox addon, FlashGot, but IDM can also be used alone with any browser. When ready to get the video, IDM displays the URL:

enter image description here


Considering the edit:

"Edit: The player is streaming an RTMP stream, not an FLV video file."

RTMP (Real Time Messaging Protocol) uses either FLV or MP4 as video format.


1
Nicholaz

Если вам не обязательно нужен поток в реальном времени, вы можете использовать DonwloadHelper для Firefox. Это позволяет хранить файл в потоке автономного просмотра или просмотра с помощью любой программы, которая вам нравится.

Ну, в данном случае это поток, и я не думаю, что за этим стоит файл. Это в режиме реального времени. И мне нужно смотреть это в режиме реального времени тоже. Svish 14 лет назад 0
@Svish - думаю, за этим стоит файл. Что ты думаешь после всех этих лет? :) cipricus 10 лет назад 0
@Svish - Чего я не понимаю, так это того, что вы выбрали в качестве окончательного ответа тот, который говорит * загрузить * файл. Если это будет сделано, в него можно будет играть многими игроками в автономном режиме без необходимости указывать URL! Я уверен, что весь интерес и голосование по поводу вопроса связаны с тем, как * найти настоящий URL-адрес *, что имеет смысл, только если часть * download * отложена. cipricus 10 лет назад 0
1
fluxtendu

URL Snooper или модуль «Grab ++» в Orbit Download Manager (будьте осторожны с нежелательным рекламным ПО при установке) могут помочь вам проанализировать сетевой трафик и найти URL.

1
Leonardo

Я бы порекомендовал это расширение для Chrome, Grab Any Media .

Он переведен на английский, итальянский, французский, немецкий, португальский язык (щелкните языковые флажки справа).

Что это? Что оно делает? Ни одна из страниц, кажется, не на английском языке Simon Sheehan 13 лет назад 3
@Simon Есть несколько флагов, которые переключают дерьмовый автоматический перевод. slhck 13 лет назад 1
@Slhck спасибо, их было довольно сложно найти: P Simon Sheehan 13 лет назад 0