当前位置:   article > 正文

如何抓包下载APP里的视频(m3u8流媒体)然后合并完整视频文件_android 抓包下载app内播放的视频

android 抓包下载app内播放的视频

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

这个问题是我弟问的,他们单位好像有什么地方要用,需要下载某个APP里点播的视频。按道理一般的方式肯定是没法下载的,但我们可以通过相对不那么一般的方式。


一、fiddler是什么?如何抓取流媒体地址?

fiddler是比较常用的一款抓包工具,基本上大家抓http用的都是这玩意,更底层还有wireshark之类的软件,这个就不细说了。

正所谓XX玩得好,牢饭少不了,fiddler就是XX的其中之一,为了避免不必要的麻烦,我就不赘述具体流程了,这里引用csdn里其他大佬的文章:

使用Fiddler对手机App抓包_fiddler手机抓包-CSDN博客

抓包工具:Fiddler下载、安装、使用 教程-CSDN博客

自己尝试抓包吧,然后找出以下类型的包:

看图标就知道了,这跟视频有关对吧,点击这些包,在右边详情窗口仔细看一下请求和响应的相关信息,找一找包含m3u8的url地址,有可能是已经请求出去了,也有可能在响应里能找到返回的地址和token之类的信息。(流媒体地址通常都是需要带token的,有些甚至要带key)

尽量把完整的流媒体地址,找出来,比如我找到的就是这样的:

https://bdhlsvodhls02.vhallxxxxxxxxxx.com/vhallxxxxxxxxxx/vhallrecord/lss_49130efe/20231128210735_b765dac9/record.m3u8?token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

拿到地址之后,进行下一步操作。

二、下载以及合并流媒体

这里我们需要用到一个叫做 N_m3u8DL-RE 的工具,在git上已经开源,非常不错,如果你是自己项目需要用到类似功能的话,也可以整合进自己项目里。

发行版下载地址:Releases · nilaoda/N_m3u8DL-RE · GitHub

具体的使用教程在该仓库的readme也写得挺清晰的:GitHub - nilaoda/N_m3u8DL-RE: Cross-Platform, modern and powerful stream downloader for MPD/M3U8/ISM. English/简体中文/繁體中文.

下载好之后,找个地方解压出来,你会获得一个 N_m3u8DL-RE.exe 文件。

这时还不能使用,该工具还需要配置ffmpeg才可以正常运行。

最简单的可以直接去BtbN的git仓库下载已经打包好的发行版:

Releases · BtbN/FFmpeg-Builds · GitHub

也可以去ffmpeg的官网下载源码自己编译:

Download FFmpeg

然后把 N_m3u8DL-RE.exe 和 ffmpeg.exe 都放在同一个目录下,打开控制台进入到该目录。

简单示例(为了方便查看,我对命令进行了换行,实际使用时别这样写):

  1. .\N_m3u8DL-RE.exe
  2. https://bdhlsvodhls02.vhallxxxxxxxxxx.com/vhallxxxxxxxxxx/vhallrecord/lss_49130efe/20231128210735_b765dac9/record.m3u8?token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  3. --save-name 01 --ffmpeg-binary-path .\ffmpeg.exe

具体命令该怎么写,去看 N_m3u8DL-RE 的readme就行。

然后就会开始下载了:

下载完成后会自动进行合并,文件太大我懒得下载完,反正会有提示告诉你的。

最终会合并成一个以你 输入的 name(你指定的文件名).mp4(或其他你指定的格式)的视频文件在当前目录下。

用视频播放器打开查看是否正常即可,一般来说,主要是看看音轨有没有问题。

感谢阅读!


觉得这篇文章有用的朋友可以给我点个赞,收藏一下,尤其是修炼搬山诀的道友,你搬就搬吧好歹给哥们点点赞。

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号