macOS下载在线视频

2018-03-05|Categories: macOS|

在macOS系统上,既可以通过命令行工具下载在线视频,也有好用的GUI图形化工具能方便的完成这个任务。

命令行工具 You-Get

You-Get是一个国人开发的开源免费的命令行下载工具,短小精悍,专用于下载视频、音频、图片等多媒体文件,支持国内外主流网站

安装

官方推荐的安装方式是通过Pip包管理器:

pip3 install you-get

也可以通过HomeBrew安装,但可能不是最新版:

brew install you-get

下载视频

下载同样非常简单:

you-get 'https://www.youtube.com/watch?v=jNQXAC9IVRw'

推荐用单引号包围视频所在网页的URL,可以防止URL包含特殊字符导致命令执行失败。

如果一个视频有多种清晰度或文件格式,想提前查看再决定下载哪一个,可以使用-i选项:

you-get -i 'https://www.youtube.com/watch?v=jNQXAC9IVRw'

下载成功率

国内视频网站大都疯狂插播广告,You-Get这种能够完全屏蔽广告的工具绝对是视频网站的大敌,因此视频网站会频繁更新技术,阻止类似工具的下载,这就需要下载工具相应的频繁升级,突破视频网站的封锁。

遗憾的是,You-Get是一个免费工具,背后的维护人员很少,无法持续投入大量精力与商业视频网站充足的人力和资源搞「军备竞赛」,这就导致某些原本支持的网站过一段时间无法下载。写这篇文章时,最新版You-Get无法下载腾讯视频的资源:

$ you-get --version
you-get: version 0.4.1040, a tiny downloader that scrapes the web.

$ you-get -i 'https://v.qq.com/x/cover/d0536ndu1n7/d0536ndu1n7.html'
you-get: [error] oops, something went wrong.
you-get: don't panic, c'est la vie. please try the following steps:
you-get:   (1) Rule out any network problem.
you-get:   (2) Make sure you-get is up-to-date.
you-get:   (3) Check if the issue is already known, on
you-get:         https://github.com/soimort/you-get/wiki/Known-Bugs
you-get:         https://github.com/soimort/you-get/issues
you-get:   (4) Run the command with '--debug' option,
you-get:       and report this issue with the full output.

碰到这种情况,要么向开发者反馈,可惜You-Get的Issues已经关闭了,具体原因未知,访问时会自动跳转到Pull requests。要么就只能换用其它工具,Downie就是其中之一。

图形化工具 Downie

Downie的最新版(3.2.2)可以轻松下载前面提到的You-Get无法下载的腾讯视频《查理芒格USC毕业演讲》

这是一个需要付费购买的软件,也正因为有人付费,开发者才有动力频繁更新:

上图是Downie官网的截图,开发者说他会在24小时内回复邮件,大约每周会更新一次。既然这个工具确实能高效的解决问题,我乐意为此付费,幸运的是,Downie授权「数码荔枝」为中国大陆正版代理,价格比官网要便宜。

合并多个视频文件

Downie下载视频确实很方便,但它不能合并视频,视频网站通常会把一个大视频分割成N个小视频,以便快速加载,前面下载的《查理芒格USC毕业演讲》就被分为7个小视频,下载之后虽然都可以播放,但合并成一个完整视频更便于管理,此时可以用ffmpeg命令快速搞定:

# 安装 ffmpeg
brew install ffmpeg
# 首先把需要合并的视频文件路径按顺序写入文件
$ cat mylist.txt
file '/path/to/file1'
file '/path/to/file2'
...
file '/path/to/file7'

# 然后用 ffmpeg 合并(concat)
$ ffmpeg -f concat -i mylist.txt -c copy output.mp4

七个视频合成一个耗时不到1分钟,远远超出Downie开发者的另一个产品Permute的合并效率(5分钟)!

Leave A Comment