自从知道浏览器的开发者模式以后,看视频的时候就会看看能不能找到视频源文件下载下来,后来发现对于以前的网站,往往是可以找到原视频下载的,但是近些年,采用了流媒体,视频被切分为片段,数量从几百到几千不等,因此通过开发者模式手动下载视频变得不太可能,尤其是对于带有加密的流媒体文件。了解到这些流媒体后,找了一些资料,并参考别人的经验,成功下载并合成了。因此记录一下下载过程,以备不时之需。

以谷歌浏览器为例,打开早些年的网站,并使用F12快捷键进入开发者模式,打开network项,F5刷新界面,获得页面加载资源视图。找到一直在加载的文件,或者使用过滤器寻找mp4文件,可找到如下文件,右键复制地址,通过下载器便可将文件下载至本地。

在此介绍一种更为简便的方法,使用IDM下载器,在浏览器中安装插件后,打开视频便可自动找到视频文件,操作简单。

右上角即为IDM下载器,已找到视频文件

点击后即可下载

IDM下载界面

而近些年的网站,因为流媒体技术的应用,大多数采用切片文件(.TS),为了下载并转码获得原视频,可采用ffmpeg工具,该工具可通过官网免费下载点此跳转。解压后将bin目录添加至环境变量的路径栏,即可通过cmd指令窗口调用。

对于成百上千个TS文件,手动下载是不切实际的,因此我们需要利用流媒体文件的目录.m3u8文件进行下载。按照上面介绍的方法,在过滤器中寻找m3u8文件。

第二个是所需的目录文件

将目录文件下载至本地,用记事本打开目录文件,可查看流媒体是否加密,以及切片的数量。观察切片文件是否有具体地址!!!若缺少具体地址,则需在过滤器中寻找一个TS文件,获取文件的存储地址。利用记事本的替换功能给每个切片文件添加实际地址。

不含实际地址

添加实际地址后的目录文件

获得能够用于直接下载的目录文件(.m3u8)后,使用CMD窗口条用ffmpeg工具下载转码。在线下载并转码的指令为

ffmpeg -protocol_whitelist "file,https,crypto,tcp,http,tls" -i index.m3u8 -c copy out.mp4

执行效果如下

正常执行过程

下载转码后的文件

ffmpeg是强大的流媒体处理软件,同样可以快速转码本地的文件。对于本地文件,只需要将切片文件地址指向本地的切片文件即可,密钥文件.key同样需要修改为本地密钥。执行本地转码时,指令也有所差别。

ffmpeg -allowed_extensions ALL -i index.m3u8 -c copy new.mp4

第一篇博客就到此为止了,写得确实比较简略,因为我对其中很多也不甚了解,本博客只作为个人笔记,大家如有不懂可参考以下几篇博客进行深入学习。

1.m3u8及TS文件下载解密:用FFmpeg解密合并m3u8中ts文件(一)

2.m3u8及TS文件下载解密:用FFmpeg解密合并m3u8中ts文件(二)

https://blog.csdn.net/u014516174/article/details/70338655

利用ffmepg下载在线视频文件相关推荐

  1. 教你保存在线视频文件

    当你看到很精彩的视频你想不想把他保存起来以后继续欣赏呢?或者是做成MP4格式放到手机里??但是目前绝大部分的视频网站由于版权.带宽等原因不提供视频下载服务,甚至想方设法把这些视频资源藏起来.所以你无法 ...

  2. 【转】教你如何下载在线视频

    教你如何下载在线视频 在其它网站看到,觉得很实用,搬到这儿来跟大家一块儿分享 QUOTE: 现在在线视频越来越多了,想下载怎么办?下面我总结了三条方法,好好学习哦.恩.主要是针对FLV视频的,什么是F ...

  3. 教你如何下载在线视频

    在其它网站看到,觉得很实用,搬到这儿来跟大家一块儿分享 教你如何下载在线视频 QUOTE: 现在在线视频越来越多了,想下载怎么办?下面我总结了三条方法,好好学习哦.恩.主要是针对FLV视频的,什么是F ...

  4. java利用ffmpeg追加合并视频文件

    java利用ffmpeg追加合并视频文件 首先要用到ffmpeg,可以根据操作系统自行下载 每个视频格式要一样,分辨率要一样 多个视频地址以list存放,直接上代码 /*** 合并视频文件* @par ...

  5. json字段顺序读取 python_如何利用Python批量读取视频文件的时间长度?

    本期的主题是利用Python来实现对视频文件时间长度的读取. 在学习编程语言时,相比较于通过书本来学习知识,我更喜欢通过观看学习视频的方式来进行学习,通过主讲老师的讲解,我能很直观且快速的了解一些知识 ...

  6. 用迅雷下载的视频,文件夹打开是空的,文件夹有大小,也没有隐藏文件的解决办法

    用迅雷下载的视频,文件夹打开是空的,文件夹有大小,也没有隐藏文件的解决办法 如果有2个文件名一样的,删除其中那个是0大小的,则另一位文件夹就有东西了.

  7. 利用Python+opencv进行视频文件的读取和保存,打开笔记本摄像头拍照保存、图像在窗口显示等操作

    版权声明:本文为博主原创文章,转载请附源链接 一.视频文件的读取和保存 Opencv中视频的读入是用VideoCapture函数,保存用的是VideoWriter函数.这两个函数支持的视频格式因电脑系 ...

  8. 视频弹窗播放html,利用jQuery实现在线视频弹出播放代码

    特效描述:利用jQuery实现 在线视频 弹出播放代码.利用jQuery实现在线视频弹出播放代码 代码结构 1. 引入CSS 2. 引入JS 3. HTML代码 视频一 2018-06-22 视频一 ...

  9. 如何下载在线视频:流行视频FLV下载

    现在在线视频越来越多了,想下载怎么办?下面我总结了三条方法,好好学习哦.恩.主要是针对FLV视频的,什么是FLV视频?就是土豆网,六间房,56,mofile,youtube等视频网站播放的流媒体.其他 ...

最新文章

  1. 读源码Apache-commons-lang3-3.1(三)
  2. java容器有哪些如何使用_Java容器有哪些?
  3. 十进制转二进制、二进制转十进制
  4. 洛谷——P1547 Out of Hay
  5. 在X++中使用IoC/DI模式应对不断变化的客户需求
  6. spring结合ehcache-spring-annotations配置缓存
  7. 如何使用 Buildah 构建容器镜像
  8. 网络体系结构——ISO/OSI参考模型
  9. ewebeditor for php任意文件上传漏洞
  10. Oracle中NB的中文处理
  11. 关于CSS中 用“rem 在谷歌浏览器下的问题
  12. [翻译]:Cinemachine 官方文档(0)
  13. astrolog32 java,astrolog32 占星软件
  14. Python 处理视频文件
  15. Python 创建一维数组、二维数组和N维数组
  16. 论文阅读Construction of Refined Protein Interaction Network for Predicting Essential Proteins
  17. 【Golang】Go语言Windows GUI库XCGUI,DirectUI设计思想,高度自定义界面,支持Direct2D硬件加速
  18. laravel维护模式 MaintenanceMode
  19. python中while循环并列_Python中while循环的一个问题
  20. 你嗑的瓜子要涨价啦?域名你“嗑”懂了吗?

热门文章

  1. 低功耗微波雷达模组的应用你都知道多少?
  2. 阿里2014校园招聘 笔试题
  3. Automatic Inference of Search Patterns for Taint-Style Vulnerabilities
  4. 像李云迪那样爱 IT界那些“情”
  5. python3 ACM模式的输入输出例子教学
  6. go语言学习第一弹:go和php的区别
  7. 浅谈Robots.txt文件给网站带来的好处
  8. 有史以来最全的CMD命令
  9. 27岁活的像个废物一样,没技术没学历,现在学习软件测试还来得及吗?
  10. 对“英语趣配音”学习软件的教学设计分析