前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >下载 m3u8 视频流

下载 m3u8 视频流

原创
作者头像
惶心
发布2018-06-19 04:44:58
20.4K4
发布2018-06-19 04:44:58
举报

简介

M3U是一种播放多媒体列表的文件格式,它的设计初衷是为了播放音频文件,比如MP3,但是越来越多的软件现在用来播放视频文件列表,M3U也可以指定在线流媒体音频源。很多播放器和软件都支持M3U文件格式。M3U8是Unicode版本的M3U,用UTF-8编码。"M3U"和"M3U8"文件都是苹果公司使用的HTTP Live Streaming格式的基础,这种格式可以在iPhone和Macbook等设备播放。

到现在,非常多的视频网站都是利用 m3u8 格式的特性,把一段视频分成多段,进而增加各类软件下载网页上视频的难度。

在最近,在【维棠软件用户交流群】内,许多人反馈无法使用软件下载 iguxuan(爱股轩) 这个网站上的视频。而这个网站甚至对在线播放的音频使用了加密格式,让一般的浏览器抓包根本无法获取视频文件。

经过 @a'ゞ手机配件、下载视频 大佬的提醒,我们可以使用另外一种思路来下载 iguxuan 上的视频。即:抓取视频的 m3u8 地址,然后下载这个 m3u8 里面隐藏着的视频。

这篇文章特别针对 iguxuan 而写,但是同时使用其他使用 m3u8 格式的视频网站(只要你能抓到 m3u8 的地址)。

抓取 m3u8 地址

准备工作

在开始以前,请确认你所使用的系统为稳定的、适合生产环境使用的系统。推荐使用 Windows 10 / 7 64位 系统,Google Chrome 浏览器。

Chrome 浏览器可以通过 HXCO Get 下载最新版本:https://get.js.org/chrome 。安装文件将从 dl.google.com 北京服务器加载,理论上中国大陆的访客都可以正常下载;如果万一不可以(即你点开上面的网址以后没有开始下载安装包),请使用 新浪软件中心 的下载点:点击下载 。如果你是 32 位系统,请下载 32 位版本:点击下载。如果你是 macOS 系统用户,请你直接访问 https://get.js.org/chrome 下载即可。

下载的是离线安装包,下载完毕直接双击,稍等几秒便可完成安装,自动打开 Google Chrome。

如何抓取

经过几次试验,抓取 iguxuan 的 m3u8 需要达成以下条件:

  1. 使用手机访问
  2. 登陆网站

那么首先你需要去注册一个账户。我目前已经注册了一个。

这网站不知道为什么貌似换了东家,不过不用管,一样下载
这网站不知道为什么貌似换了东家,不过不用管,一样下载

然后我们通过 首页推荐 / 搜索 等方式找到想要下载的网页,点击地址栏全选网址,快捷键 Ctrl + C 复制到剪贴板。

这网站不知道为什么貌似换了东家,地址变得比较奇怪,不过不影响我们的下载。

点击地址栏全选网址
点击地址栏全选网址

然后我们点击浏览器标签页旁边的小方块,新建一个标签页。

新建一个标签页
新建一个标签页

在新标签页的任意空白处右键,点击菜单最下面的 “检查” 或者 “审查元素”。这里显示不一样是因为我的系统语言是英语。

审查元素
审查元素

点击以后会弹出来一个操作面板,是全英文的,不过不用慌,一步一步来:先点击上面的 “Network” 标签,再点击 左边的 “手机” 标签。

操作步骤
操作步骤

以上步骤操作完了以后,浏览器就会模拟出一个手机屏幕的样子,箭头所指的地方可以切换设备(非必要)。

Chrome 模拟手机浏览
Chrome 模拟手机浏览

然后我们在地址栏里面复制进视频地址,按 回车键。等网站的手机版加载完毕以后,点击下方的登陆 进行登陆操作。注意,如果你在正常的电脑版网页里登陆过,你还是需要在手机版里面重新登陆一次。

进行登陆操作
进行登陆操作

登陆完毕。会重定向回视频页面。

登陆完毕
登陆完毕

先在 Network 标签 下方的 Filter(过滤)框框里面输入m3u8

然后点击播放视频(不知道为什么这里他提示我无法播放),可以看到网页已经加载了两个一模一样的 m3u8 文件。

播放视频
播放视频

在 m3u8 文件上方右键,"Copy",“Copy link address”,这样,我们就成功获取了这个视频的 m3u8 地址。

成功获取了这个视频的 m3u8 地址
成功获取了这个视频的 m3u8 地址

这是我抓出来的:

代码语言:text
复制
http://hls.videocc.net/05714ecace/b/05714ecace60df265fe0f0f4df60d9fb_1.m3u8?pid=1529352573724X1532482

下载 m3u8

准备工作

简介

我决定使用 FFmpeg 下载 m3u8 视频流,因为这是最为可靠的方式。

FFmpeg是一个自由软件,可以运行音频和视频多种格式的录影、转换、流功能[2],包含了libavcodec——这是一个用于多个项目中音频和视频的解码器库,以及libavformat——一个音频与视频格式转换库。

FFmpeg 完全开源免费,并且使用方便,支持多个系统。

macOS 安装

如果你在使用 macOS,安装 FFmpeg 的最简单方式是使用 Homebrew 安装。在 “终端” 里面输入以下命令安装 Homebrew。

代码语言:shell
复制
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

安装完毕以后,使用以下命令安装 FFmpeg。

代码语言:shell
复制
brew install ffmpeg

Windows 安装

如果你在使用 Windows,推荐使用我为你准备好的安装方式:

1. 通过 Onedrive For Business 。

2. 请双击打开 [Huangxin_FFmpeg.exe],然后将解压路径修改成 c:/  然后点击 “Extract”解压缩。(可能需要管理员权限,请允许;也有可能被 Windows Smart Screen 或者别的安全软件拦截,请一律允许)

解压缩
解压缩

3. 以Windows10为例,点击小娜,搜索 “高级系统设置”。然后点击。

高级系统设置
高级系统设置

4. 然后请在弹出的窗口最下方找到 “环境变量”,点击进入。

环境变量
环境变量

5. 在”用户变量”区域选择 PATH 条目。它位于环境变量窗口中的第一个框架内。点击编辑按钮。

  • 点击 “新建”,然后输入;c:\Huangxin_FFmpeg\bin
  • 点击确认保存更改。如果在这个窗口输入的内容有误,那么有可能会造成Windows无法正常启动。
  • 如果在”用户变量”设置下没有PATH条目,点击新建按钮创建。在变量名栏输入PATH,再进行上两步的操作。
添加系统变量
添加系统变量

6. 确认已经保存以后,打开cmd,(win+r 输入cmd然后回车),输入 ffmpeg –version 。如果出现版本信息,则安装成功。

安装成功
安装成功

使用方式

通用命令如下:

代码语言:shell
复制
ffmpeg -i 视频地址.url "文件名.mp4"

我们刚刚抓出来的视频地址如下:

代码语言:text
复制
http://hls.videocc.net/05714ecace/b/05714ecace60df265fe0f0f4df60d9fb_1.m3u8?pid=1529352573724X1532482

那么完整的命令就是:

代码语言:shell
复制
ffmpeg -i http://hls.videocc.net/05714ecace/b/05714ecace60df265fe0f0f4df60d9fb_1.m3u8?pid=1529352573724X1532482 "文件名.mp4"

先别急,想好你要放视频的位置 - 比如我们在桌面新建一个叫 iguxuan 的文件夹

新建一个叫 iguxuan 的文件夹
新建一个叫 iguxuan 的文件夹

然后双击进入文件夹,在顶部地址栏单击,全选地址,Ctrl + C 复制到剪贴板。

复制到剪贴板
复制到剪贴板

然后我们回到黑糊糊的 CMD 命令提示符 窗口(Win + r,输入 cmd,回车),输入以下命令:

代码语言:shell
复制
cd C:\Users\imhx\Desktop\iguxuan

注意,C:\Users\imhx\Desktop\iguxuan 是我选择的文件夹路径,请输入你自己的路径。效果如下:

CMD CD 命令
CMD CD 命令

这样我们就在命令行里面进入了我们刚刚的文件夹。接下来我们输入刚刚的命令:

代码语言:shell
复制
ffmpeg -i http://hls.videocc.net/05714ecace/b/05714ecace60df265fe0f0f4df60d9fb_1.m3u8?pid=1529352573724X1532482 "爱股轩视频01.mp4"

然后按回车,程序就会自动开始下载。视频下载速度取决于你的网络环境。

下载视频中
下载视频中

片刻以后,视频自动下载完成,并且转换为了 .mp4 格式。

视频下载完成
视频下载完成

效果如下:

播放视频
播放视频

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 简介
  • 抓取 m3u8 地址
    • 准备工作
      • 如何抓取
      • 下载 m3u8
        • 准备工作
          • 简介
          • macOS 安装
          • Windows 安装
        • 使用方式
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档