如何下载优酷 m3u8 格式的视频文件?

2024-02-27 08:32

本文主要是介绍如何下载优酷 m3u8 格式的视频文件?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

mp4

平常最熟悉的视频文件格式就是mp4了,比如这个微博视频就是mp4格式https://weibo.com/tv/v/I6NlI3XNO?fid=1034:4416174394388093

640?wx_fmt=png

通过一键视频下载器扩展获取mp4文件地址https://f.video.weibocdn.com/000ayK6Dlx07wZwKH7lu01041200prjS0E010.mp4?label=mp4_hd&template=640x396.24.0&trans_finger=ac6fb6d5c49a67fe2901ae638b222ab2&Expires=1568554727&ssig=ZtEl%2F7uG8e&KID=unistore,video

那m3u8又是什么呢?

m3u8

M3U是一种播放多媒体列表的文件格式,它的设计初衷是为了播放音频文件,比如MP3,但是越来越多的软件现在用来播放视频文件列表,M3U也可以指定在线流媒体音频源。很多播放器和软件都支持M3U文件格式。

以上来自维基百科解释。

m3u8是HTTP Live Streaming直播的索引文件,打开它时播放软件并不是播放它,而是根据它的索引找到对应的音视频文件的网络地址进行在线播放。

优酷视频播放的文件就是m3u8格式,比如这个视频 周杰伦电影《不能说的秘密》你看过吗 https://v.youku.com/v_show/id_XMjg5MDQxOTc2MA==.html?spm=a2h0k.11417342.soresults.dtitle

640?wx_fmt=png

通过控制台可以看到m3u8文件地址 https://pl-ali.youku.com/playlist/m3u8?vid=XMjg5MDQxOTc2MA&type=mp4&ups_client_netip=3b6d992c&utid=M196FRgJHVwCAXb3FB8gYVHW&ccode=0502&psid=f50f79c10a8678682848a73d82d3716a&app_ver=1.8.1&duration=298&expire=18000&drm_type=1&drm_device=7&play_ability=5376&media_type=standard,subtitle&ups_ts=1568551492&onOff=0&encr=0&ups_key=11ea864efe421edbefa4aaa770c2b741

把这个文件下载到本地可以看到内容:

#EXTM3U
#EXT-X-TARGETDURATION:12
#EXT-X-VERSION:3
#EXTINF:6.0,
http://ykugc.cp31.ott.cibntv.net/6574C0B44B8357159B75639A8/03000201005968368A9A59456709F2F71EACA8-CD59-5E8E-E5CC-BCC4CD6E539C.flv.ts?ccode=0502&duration=298&expire=18000&psid=f50f79c10a8678682848a73d82d3716a&ups_client_netip=3b6d992c&ups_ts=1568551492&ups_userid=&utid=M196FRgJHVwCAXb3FB8gYVHW&vid=XMjg5MDQxOTc2MA&sp=&bc=2&vkey=Ae1f41ad7d602251c773d68dc69615287&ts_start=0.0&ts_end=5.9&ts_seg_no=0&ts_keyframe=1
#EXTINF:6.0,
http://ykugc.cp31.ott.cibntv.net/6574C0B44B8357159B75639A8/03000201005968368A9A59456709F2F71EACA8-CD59-5E8E-E5CC-BCC4CD6E539C.flv.ts?ccode=0502&duration=298&expire=18000&psid=f50f79c10a8678682848a73d82d3716a&ups_client_netip=3b6d992c&ups_ts=1568551492&ups_userid=&utid=M196FRgJHVwCAXb3FB8gYVHW&vid=XMjg5MDQxOTc2MA&sp=&bc=2&vkey=Ae1f41ad7d602251c773d68dc69615287&ts_start=5.9&ts_end=11.9&ts_seg_no=1&ts_keyframe=1

播放视频的时候就是播放这样一段一段的ts文件 http://ykugc.cp31.ott.cibntv.net/6574C0B44B8357159B75639A8/03000201005968368A9A59456709F2F71EACA8-CD59-5E8E-E5CC-BCC4CD6E539C.flv.ts

m3u8格式的文件用QQ影音这样的软件没法直接播放的,这就需要将m3u8转换为mp4格式了,推荐一个非常好用的命令行工具ffmpeg 。

ffmpeg

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

直接在官网下载就好 https://ffmpeg.org/ ,然后打开命令行直接输入ffmpeg -i "https://pl-ali.youku.com/playlist/m3u8?vid=XMjg5MDQxOTc2MA&type=mp4&ups_client_netip=3b6d992c&utid=M196FRgJHVwCAXb3FB8gYVHW&ccode=0502&psid=f50f79c10a8678682848a73d82d3716a&app_ver=1.8.1&duration=298&expire=18000&drm_type=1&drm_device=7&play_ability=5376&media_type=standard,subtitle&ups_ts=1568551492&onOff=0&encr=0&ups_key=11ea864efe421edbefa4aaa770c2b741" -vcodec copy -acodec copy -absf aac_adtstoasc 不能说的秘密短片.mp4 等待一会就能下载到本地。

640?wx_fmt=png

当然也可以将mp4转换为m3u8格式,直接ffmpeg -i 不能说的秘密短片.mp4 -c copy -bsf h264_mp4toannexb 不能说的秘密短片.ts ,然后再将ts文件切片生成m3u8文件,更多 ffmpeg 的使用可以参考我之前的文章ffmpeg 将视频转GIF

不过用命令行有点麻烦而且对普通人有点难度,还好有人开发了M3U8批量下载器,复制上面的m3u8地址就能直接下载了,公众号回复 m3u8 获取软件。

640?wx_fmt=png

有了 ffmpeg 和之前我之前说的那些工具 那些你可能不知道的视频下载奇技淫巧 ,几乎任何视频网站的视频都可以自由下载了(付费除外)。

如果文章对你有帮助,还望不吝点个在看支持我写下去的动力,感谢。

推荐阅读:

如何发一条空白的朋友圈

免费在线听周杰伦歌曲

那些你可能不知道的微信奇技淫巧

如何在豆瓣租房小组快速找到满意的房子

10%+10% 不等于 0.2?

Chrome 浏览器扩展神器油猴

免费星球

公众号:苏生不惑

扫描二维码关注

这篇关于如何下载优酷 m3u8 格式的视频文件?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/751821

相关文章

Python pip下载包及所有依赖到指定文件夹的步骤说明

《Pythonpip下载包及所有依赖到指定文件夹的步骤说明》为了方便开发和部署,我们常常需要将Python项目所依赖的第三方包导出到本地文件夹中,:本文主要介绍Pythonpip下载包及所有依... 目录步骤说明命令格式示例参数说明离线安装方法注意事项总结要使用pip下载包及其所有依赖到指定文件夹,请按照以

C++ 函数 strftime 和时间格式示例详解

《C++函数strftime和时间格式示例详解》strftime是C/C++标准库中用于格式化日期和时间的函数,定义在ctime头文件中,它将tm结构体中的时间信息转换为指定格式的字符串,是处理... 目录C++ 函数 strftipythonme 详解一、函数原型二、功能描述三、格式字符串说明四、返回值五

C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式

《C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式》Markdown凭借简洁的语法、优良的可读性,以及对版本控制系统的高度兼容性,逐渐成为最受欢迎的文档格式... 目录为什么要将文档转换为 Markdown 格式使用工具将 Word 文档转换为 Markdown(.

Java中JSON格式反序列化为Map且保证存取顺序一致的问题

《Java中JSON格式反序列化为Map且保证存取顺序一致的问题》:本文主要介绍Java中JSON格式反序列化为Map且保证存取顺序一致的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未... 目录背景问题解决方法总结背景做项目涉及两个微服务之间传数据时,需要提供方将Map类型的数据序列化为co

Ubuntu上手动安装Go环境并解决“可执行文件格式错误”问题

《Ubuntu上手动安装Go环境并解决“可执行文件格式错误”问题》:本文主要介绍Ubuntu上手动安装Go环境并解决“可执行文件格式错误”问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未... 目录一、前言二、系统架构检测三、卸载旧版 Go四、下载并安装正确版本五、配置环境变量六、验证安装七、常见

python如何下载网络文件到本地指定文件夹

《python如何下载网络文件到本地指定文件夹》这篇文章主要为大家详细介绍了python如何实现下载网络文件到本地指定文件夹,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下...  在python中下载文件到本地指定文件夹可以通过以下步骤实现,使用requests库处理HTTP请求,并结合o

使用Python开发Markdown兼容公式格式转换工具

《使用Python开发Markdown兼容公式格式转换工具》在技术写作中我们经常遇到公式格式问题,例如MathML无法显示,LaTeX格式错乱等,所以本文我们将使用Python开发Markdown兼容... 目录一、工具背景二、环境配置(Windows 10/11)1. 创建conda环境2. 获取XSLT

HTML5表格语法格式详解

《HTML5表格语法格式详解》在HTML语法中,表格主要通过table、tr和td3个标签构成,本文通过实例代码讲解HTML5表格语法格式,感兴趣的朋友一起看看吧... 目录一、表格1.表格语法格式2.表格属性 3.例子二、不规则表格1.跨行2.跨列3.例子一、表格在html语法中,表格主要通过< tab

前端下载文件时如何后端返回的文件流一些常见方法

《前端下载文件时如何后端返回的文件流一些常见方法》:本文主要介绍前端下载文件时如何后端返回的文件流一些常见方法,包括使用Blob和URL.createObjectURL创建下载链接,以及处理带有C... 目录1. 使用 Blob 和 URL.createObjectURL 创建下载链接例子:使用 Blob

Python将博客内容html导出为Markdown格式

《Python将博客内容html导出为Markdown格式》Python将博客内容html导出为Markdown格式,通过博客url地址抓取文章,分析并提取出文章标题和内容,将内容构建成html,再转... 目录一、为什么要搞?二、准备如何搞?三、说搞咱就搞!抓取文章提取内容构建html转存markdown