记一次加密的ts视频下载
想要下载一个视频,但是网站上不能直接下载。试过IDM,以及Streaming Video Recorder 都不行。因为视频被加密了。
ts 是分片的视频文件,m3u8 是播放索引列表(还可配置其他参数,比如加密)。
未加密的 ts 视频下载方法
如果没有加密的话,那么直接下载所有ts文件,然后合并即可。
- windows 下合并:
copy /b D:\a\*.ts D:\b\new.ts
- Unix 下合并:
echo 'd9c25b2f8f666097d855bfffcb22f529_' {1..9}.ts | tr "" "\ n"> tslist
接着while read line; do cat $line >> new.ts; done < tslist
(参考如何用Chrome下载视频流)
m3u8 文件中指定加密方式的 ts 视频下载
有加密的话,需要处理m3u8文件,并使用ffmpeg进行转换,具体步骤如下。 (参考m3u8加密文件的解密及ts文件的合并)
有加密的视频如何判断,在m3u8文件中,有 EXT-X-KEY 的话就有加密,如下图,后面有加密方式以及密钥地址:
处理步骤:
首先,下载所需文件:
- 下载所有 .ts 文件;
- 下载 .m3u8 文件(我这里命名a.m3u8);
- .m3u8 文件中拿到 key,并保存,这里注意正确的 key 为16字节。(我本地命名 alikey)
修改 .m3u8 文件,其中 key 的 URI 改为上一步保存本地的文件;ts是本地路径的文件,如果是同一个目录,只写名字即可。
ffmpeg命令
ffmpeg -allowed_extensions ALL -protocol_whitelist "file,http,crypto,tcp" -i a.m3u8 -c copy new.mp4
就生成了所需要的视频文件。
报错:Error when loading first segment
把key保存起来,m3u8文件配置改好,用ffmpeg下载时候,报错
Error when loading first segment
搞了半天发现是下的key有问题,当时保存的是被压缩的。
原来是被压缩了,解码后的key就是正确的,共16字节。
多个ts文件批量下载
拿到 m3u8 中的ts文件名,然后拼接即可拿到所有url,粘贴到下载工具即可批量下载。
如果文件名是按序号递增的,那可以直接用迅雷批量下载:比如我们的文件名是 http://abc.com/0001.ts ... http://abc.com/0020.ts 共20个文件,迅雷可以使用通配符,直接指定范围和通配符长度,就可以批量下载
记一次加密的ts视频下载的更多相关文章
- 批量下载ts视频文件
第一步 使用chrome 按F12进入开发模式,拖动视频进度条到视频结束: 然后找到.m3u8以结尾的文件并保存为文本文件. 第二步 点开查看里面是否存在如下以ts结尾的文件内容 ...... /20 ...
- python+fiddler下载vip视频 && ts视频可合并
如果你只想在线看视频可以去看这篇博客:python实现通过指定浏览器免费观看vip视频 先看一下我们程序运行的结果 我们要解析的接口就是(就是这个"接口+视频地址"可以解析出vi ...
- 电脑视频下载王-Apowersoft Video Download Capture v6.3.6
Apowersoft Video Download Capture (视频下载王) 是由香港Apowersoft出品的一款集视频下载.视频转换.媒体播放及录屏等功能为一体的多功能视频下载工具,简便实用 ...
- stars-one原创工具——m3u8视频下载合并器(kotlin)
一款可以下载m3u8.解密ts文件及合并ts文件的视频下载工具 蓝奏云下载地址 github地址 软件对你有帮助的话,不妨赞赏一波!感谢! 程序说明 采用多线程下载,可有效的提高下载速度 内置解密程序 ...
- 视频下载四大神器—如何下载优酷/爱奇艺/腾讯/B站超清无水印视频
视频下载四大神器—如何下载优酷/爱奇艺/腾讯/B站超清无水印视频 2018-07-11 | 标签»下载, 下载工具, 视频 又是视频下载,老生常谈的话题.阿刚同学已在乐软博客多次与大家分享推荐 ...
- B站视频下载(VideoHelper)
继续上次的知乎爬虫, 这次开始了哔哩哔哩的爬虫实践: 首先介绍下如何下载吧: VideoHelper 里面有三种方式下载b站视频. 同样的流程, 还是先抓包,分析参数,寻找参数(包括之前的请求包和页面 ...
- html5 video标签如何禁止视频下载
html5 video标签如何禁止视频下载 一.总结 一句话总结:bing方法给video对象绑定return false的匿名方法. 1.html5 video标签如何禁止视频下载? bing方法给 ...
- python3爬虫(4)各种网站视频下载方法
python3爬虫(4)各种网站视频下载方法原创H-KING 最后发布于2019-01-09 11:06:23 阅读数 13608 收藏展开理论上来讲只要是网上(浏览器)能看到图片,音频,视频,都能够 ...
- 如何手动合并ts视频文件
手动合并ts视频文件一不需要编程,二不需要下载什么特殊软件,用一些最普通的软件即可. 工具: 1.Chrome浏览器 2.迅雷 3.CMD命令行工具 步骤 一.打开迅雷,先确保没有别的在下载. 二.播 ...
随机推荐
- Git算不算程序员的必备技能?
作者:慕课网链接:https://www.zhihu.com/question/41667536/answer/486640083来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注 ...
- phpstudy后门POC分析和EXP开发
POC 2019年9月20日,网上传出 phpStudy 软件存在后门,随后作者立即发布声明进行澄清,其真实情况是该软件官网于2016年被非法入侵,程序包自带PHP的php_xmlrpc.dll模块被 ...
- OrchardCore Headless建站
说到CMS系统,可能大家都能想起WordPress和Drupal之类的框架,作为.NET爱好者,一般也是知道一些基于.NET的CMS框架的,典型的比如DNN.Umbraco之类的.我很早之前听过Orc ...
- 前端基础之SCC
目录 一:SCC 1.什么数SCC? 2.CSS3语法 3.语法结构 4.注释语法 5.css代码书写位置(引入方式) 二:scc代码书写位置(引入方式实战) 1.style内部直接编写css代码 2 ...
- Python Package Cheatsheet
Web 服务:tornado pip3 install tornado import sys import tornado.ioloop import tornado.web import json ...
- 分治FFT小记🐤
分治FFT:在 $O(n \log^2 n)$ 的时间内求出类似于 $f_i=\sum\limits_{j=0}^{i-1}g(i-j)f(j)$ 之类的递推式 思想:同 CDQ 分治的思想,先分成左 ...
- react之withRouter的作用
withRouter的作用:把不是通过路由切换过来的组件,将react-router的history.location和match三个对象传入到props对象上: 默认情况下必须是经过路由匹配渲染的组 ...
- 013 Linux 搞懂「文件所属者更改及权限的赋予」从未如此简单(chmod、chgrp、chown)
目录 01 一图详解「ls -l」 02 两种符号区分表示文件和目录 03 三种访问权限及表示 04 四种符号表示文件所属者用户 05 三个变更文件所属者及修改所属者权限的命令 06 工作实践命令举例 ...
- [ACM]Link-Cut Tree实现动态树初探
动态树问题是指的一类问题,而不是具体指的某一种数据结构.它主要维护一个包含若干有根树的森林,实现对森林的修改和查询等. 实现动态树的数据结构据说主要有4种,Link-Cut Tree是其中的一种.Li ...
- 为什么内部类调用的外部变量必须是final修饰的?
感谢原文:https://blog.csdn.net/u010393325/article/details/80643636 因为生命周期的原因.方法中的局部变量,方法结束后这个变量就要释放掉,fin ...