在m3u8 url下载视频的cli程序

m3u8downloader的Python项目详细描述


m3u8downloader是一个在m3u8链接上下载视频的工具。HTTP Live Streaming (HLS)正在变得流行。m3u8播放列表供hls使用 为不同客户提供不同质量的视频片段此工具支持 HLS主播放列表和媒体播放列表。如果提供主播放列表,则 自动选择最高分辨率。HLS片段加密是 支持。支持从部分下载继续,只需重新运行相同的 命令继续。

ffmpeg用于将下载的片段转换为最终的mp4视频文件

安装

要安装m3u8downloader,只需:

$ sudo apt install -y ffmpeg
$ pip install --user m3u8downloader

快速启动

命令行用法示例:

downloadm3u8 -o ~/Downloads/foo.mp4 https://example.com/path/to/foo.m3u8

如果~/.local/bin不在$PATH中,则可以使用完整路径:

~/.local/bin/downloadm3u8 -o ~/Downloads/foo.mp4 https://example.com/path/to/foo.m3u8

以下是内置的命令行帮助:

usage: m3u8downloader [-h][--version][--debug] --output OUTPUT
                      [--tempdir TEMPDIR][--concurrency N]
                      URL

download video at m3u8 url

positional arguments:
  URL                   the m3u8 url

optional arguments:
  -h, --help            show this help message and exit
  --version             show program's version number and exit
  --debug               enable debug log
  --output OUTPUT, -o OUTPUT
                        output video filename, e.g. ~/Downloads/foo.mp4
  --tempdir TEMPDIR     temp dir, used to store .ts files before combing them
                        into mp4
  --concurrency N, -c N
                        number of fragments to download at a time

文件

此命令行工具没有额外的文档。

限制

此工具仅分析用于选择媒体播放列表的最小m3u8扩展名 从主播放列表中,从媒体播放列表下载密钥和片段。如果 m3u8文件下载不正确,可能是某个新的扩展名 添加到HLS规范中,但此工具不知道

更改日志

  • V0.8.0 2019-03-31
    • 为日志处理程序添加logrotate
  • v0.7.8 2019-03-09
    • 错误修复:某些情况下片段url重写失败
  • v0.7.7 2019-03-08
    • 错误修复:总是将片段url重写为本地abs路径
  • V0.7.5 2019-03-07
    • 将默认日志级别设置为“信息”
  • V0.7.4 2019-03-07
    • 初始版本

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
正则表达式Java使用关键字拆分字符串   Neo4j Java API模式索引范围查找?   java访问JButton[]   java如何混淆tomcat日志文件中的请求属性   apache运行CGI Java程序   java从一个Eclipse插件开始,我如何通过编程使Eclipse编辑某个文件?   从php中的SQL数据库到Java中的多个值作为单独的变量   java如何在多个osgi捆绑包之间共享资源   datetime Java time,无法从历元秒解析年份   java无法在安卓应用程序中使用morpho指纹扫描仪设备捕获指纹   java使用groovy/ratpack发送电子邮件   javascript在jsp页面中添加验证,但在控制台中仍然显示一些错误   java如何修复com。mysql。jdbc。DocsConnectionPropsHelper   java AlertDialog dispatchTouchEvent