抓取流媒体视频
- 不要学
Youtube
免费视频
通常可使用 yt-dlp 工具直接下载 Youtube 的免费视频。
yt-dlp 是 youtube-dl 的一个经典分支版本,后者因近年的法律纠纷已停止维护。
yt-dlp 的 GitHub 仓库的 README 中详细描述了工具的安装(下载)和使用方法及参数解释,请仔细阅读。
下面我们介绍实践中该工具的简单用法。
下载 yt-dlp(展开查看)
在 RELEASE FILES - Recommended 的表格中,选择对应平台的可执行文件并下载。
使用 yt-dlp(展开查看)
我们以这个视频为例介绍 yt-dlp 的基本使用方法。
这个工具非常强大,更多功能请自行查阅相关文档和命令行帮助。
首先从浏览器地址栏复制该视频的地址( https://www.youtube.com/watch?v=9qpZrwpQle4 )。
如果这个地址很长,我们只需要保留 ?v=xxxxxxxxx 这个参数即可。
打开命令行窗口,在 yt-dlp 可执行文件所在目录下执行以下文本块中第一行所示命令(如果您不知道如何操作,说明您需要阅读「网上冲浪技巧」)查看该视频所有支持下载的视频和音频格式:
$ ./yt-dlp -F "https://www.youtube.com/watch?v=9qpZrwpQle4"
[youtube] Extracting URL: https://www.youtube.com/watch?v=9qpZrwpQle4
[youtube] 9qpZrwpQle4: Downloading webpage
[youtube] 9qpZrwpQle4: Downloading ios player API JSON
[youtube] 9qpZrwpQle4: Downloading player bc657243
[youtube] 9qpZrwpQle4: Downloading m3u8 information
[info] Available formats for 9qpZrwpQle4:
ID EXT RESOLUTION FPS CH │ FILESIZE TBR PROTO │ VCODEC VBR ACODEC ABR ASR MORE INFO
─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
...
140 m4a audio only 2 │ 1.60MiB 130k https │ audio only mp4a.40.2 130k 44k [ja] medium, m4a_dash
...
137 mp4 1920x1080 24 │ 23.20MiB 1878k https │ avc1.640028 1878k video only 1080p, mp4_dash
...
没有特别需要的情况下,我们视频轨道通常选择 137 号流(mp4 1920x1080 avc video only),音频轨道选择 140 号流(m4a audio only)。
决定好要下载的音视频轨道后,在 yt-dlp 可执行文件所在目录下执行以下文本块中第一行所示命令下载。
$ ./yt-dlp -f 137+140 "https://www.youtube.com/watch?v=9qpZrwpQle4"
[youtube] Extracting URL: https://www.youtube.com/watch?v=9qpZrwpQle4
[youtube] 9qpZrwpQle4: Downloading webpage
[youtube] 9qpZrwpQle4: Downloading ios player API JSON
[youtube] 9qpZrwpQle4: Downloading m3u8 information
[info] 9qpZrwpQle4: Downloading 1 format(s): 137+140
WARNING: You have requested merging of multiple formats but ffmpeg is not installed. The formats won't be merged
[download] Destination: TVアニメ『ささやくように恋を唄う』劇中歌「Sunny Spot」MV [9qpZrwpQle4].f137.mp4
[download] 100% of 23.20MiB in 00:00:00 at 42.62MiB/s
[download] Destination: TVアニメ『ささやくように恋を唄う』劇中歌「Sunny Spot」MV [9qpZrwpQle4].f140.m4a
[download] 100% of 1.60MiB in 00:00:00 at 21.03MiB/s
下载完成后,您也许会发现音频和视频被分别保存为了两个文件:
$ ls -l | grep 9qpZrwpQle4
-rw-r--r--@ 1 ****** ****** 24325853 5 25 14:22 TVアニメ『ささやくように恋を唄う』劇中歌「Sunny Spot」MV [9qpZrwpQle4].f137.mp4
-rw-r--r--@ 1 ****** ****** 1678484 5 25 14:22 TVアニメ『ささやくように恋を唄う』劇中歌「Sunny Spot」MV [9qpZrwpQle4].f140.m4a
这是因为 yt-dlp 的自动混流功能依赖 ffmpeg 软件。
ffmpeg 的下载和使用并非本节重点,请参见后期相关小节内容。
请注意只有 PATH 变量中所包含的目录下的 ffmpeg 才可被 yt-dlp 识别和调用。
设置好 ffmpeg 后重新执行上述命令,yt-dlp 便会帮我们下载选定的音频和视频流并自动混流成一个视频文件。
Youtube 直播录像
kkr
未来会补充该部分内容,如现在有需要可进组后了解。
AbemaTV
Widevine
问就是不会