我正在寻找在 CLI(终端)中运行的下载管理器。
工具应解决以下目的。
将 YouTube URL 列表作为输入/从文件中获取 URL 列表。
网络连接中断时应暂停并恢复下载。
应该在终端中运行。我在无头媒体服务器上运行它。
我现在使用youtube-dl
nodejs 脚本。但该脚本缺少连接监控和下载完整性检查、下载恢复功能。
我尝试了极限下载管理器,它不会无头运行。
任何实现相同目标的投入都值得赞赏。
我正在寻找在 CLI(终端)中运行的下载管理器。
工具应解决以下目的。
将 YouTube URL 列表作为输入/从文件中获取 URL 列表。
网络连接中断时应暂停并恢复下载。
应该在终端中运行。我在无头媒体服务器上运行它。
我现在使用youtube-dl
nodejs 脚本。但该脚本缺少连接监控和下载完整性检查、下载恢复功能。
我尝试了极限下载管理器,它不会无头运行。
任何实现相同目标的投入都值得赞赏。
两个
while
循环bash
就足够了:解释:
youtube-dl
是可通过普通包管理器安装的 python 包,例如apt
./tmp/yt
文件逐行包含 url 列表。-i
表示如果遇到 url 无效错误,则继续在文件中选择下一个 url(但不是套接字错误,这将进入ping
“失败并等待网络启动”循环)-c
表示强制恢复部分下载的文件。文件名应该具有一致的格式,以便恢复工作(即您下次不能更改youtube-dl
格式并期望恢复工作)。我个人使用-o './%(title)s-%(upload_date)s-%(id)s.%(ext)s'
格式--no-mtime
以确保文件“触摸”(如果我想按下载时间而不是视频更新时间列出文件排序,这很有用)。任何命令行HTTP客户端都应该有用。在 POSIX 系统上,考虑使用 GNU wget或curl(如果协议是FTP,则为众多 FTP 命令行客户端之一,例如ncftp)。
您也可以自己编写一些代码,使用一些 HTTP 客户端库,如libcurl(以及许多脚本语言,例如 Python、Guile、Perl 等......有许多 HTTP 客户端工具)。请务必了解更多关于HTTP及其cookie的信息。
您可以找到(对于 Linux)一些 youtube 特定的命令行工具。