YoutubeDL-Material 是 youtube-dl 的 Material Design 前端。它的前端使用 Angular 15 进行编码,后端使用 Node.js 进行编码。
现在有了 Docker 支持!
检查先决条件,然后转到安装部分。简单易行!
这是完成后的样子:
深色模式:
注意:如果您想使用 Docker,可以跳至 Docker 部分以获取设置指南。
所需的依赖项:
可选依赖项:
atomicparsley
)curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt-get install nodejs youtube-dl ffmpeg unzip python npm
sudo yum install epel-release
sudo yum localinstall --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm
sudo yum install centos-release-scl-rh
sudo yum install rh-nodejs12
scl enable rh-nodejs12 bash
curl -fsSL https://rpm.nodesource.com/setup_16.x | sudo bash -
sudo yum install nodejs youtube-dl ffmpeg ffmpeg-devel
如果您正在使用 Docker,请跳至 Docker 部分。否则,继续:
首先,下载最新版本!
将youtubedl-material
目录拖动到易于访问的目录。导航到appdata
文件夹并编辑default.json
文件。
注意:如果您打算使用反向代理,则不需要执行下一步
端口转发default.json
中列出的端口,默认为17442
。
配置完成后,运行npm install
以安装所有后端依赖项。完成后,输入npm start
。这将运行后端服务器,该服务器也为前端提供服务。在浏览器上,导航到服务器(具有指定端口的 URL)。尝试添加 YouTube 链接看看是否有效。如果是的话,中提琴! YoutubeDL-Material 现已启动并运行。
如果您遇到问题,请注意这通常是由配置问题引起的。您应该做的第一件事是检查控制台。要到达那里,请右键单击页面上的任意位置,然后单击“检查元素”。然后在弹出的菜单上单击控制台。查看那里的错误,并尝试进行调查。
如果您想安装 YoutubeDL-Material,请转到安装部分。如果您想自己构建它和/或开发存储库,那么本节适合您。
要部署,只需克隆存储库,然后进入youtubedl-material
目录。键入npm install
,所有依赖项都会安装。然后输入cd backend
并再次输入npm install
以安装后端的依赖项。
一旦你这样做了,你就几乎可以启动并运行了。您需要做的就是编辑youtubedl-material/appdata
中的配置,返回到youtubedl-material
目录,然后输入npm run build
。这将构建应用程序,并将输出文件放入youtubedl-material/backend/public
文件夹中。
最后,输入npm -g install pm2
以全局安装 pm2。
前端现已完成。后端就简单多了。只需进入backend
文件夹,然后输入npm start
。
最后,如果您希望您的实例可从网络外部使用,您可以设置反向代理。
或者,您可以端口转发配置中指定的端口(默认为17442
)并将其指向服务器的 IP 地址。确保该端口也允许通过服务器的防火墙。
如果您使用的是 Synology NAS、unRAID、Raspberry Pi 4 或任何其他可能的特殊情况,您可以检查问题跟踪器和 Wiki 中是否存在已知问题或说明!
如果您想使用 Docker 设置 YoutubeDL-Material,本节适合您。你很幸运! Docker 设置非常简单。
curl -L https://github.com/Tzahi12345/YoutubeDL-Material/releases/latest/download/docker-compose.yml -o docker-compose.yml
下载最新的Docker Compose,或者转到releases页面获取您想要的版本。docker-compose pull
。这将下载官方的 YoutubeDL-Material docker 镜像。docker-compose up
来启动它。如果成功,它应该显示“HTTP(S):在端口 17443 上启动”或类似内容。这告诉您应用程序的容器内部端口。请检查docker-compose.yml
文件中的外部端口。如果您按照上述方式下载了文件,则默认为8998 。默认情况下,Docker 容器以非 root 身份运行,UID=1000 和 GID=1000。要将其设置为您自己的 UID/GID,只需更新docker-compose.yml
中的environment
部分,如下所示:
environment :
UID : YOUR_UID
GID : YOUR_GID
为了更好地扩展大型数据集,请使用 MongoDB 后端运行 YoutubeDL-Material 实例,而不是基于 json 文件的默认实例。它将解决许多性能问题(尤其是数万个视频/音频的数据集)!
教程。
API文档
首先,转到设置菜单并从“额外”选项卡启用公共 API。如果 API 密钥丢失,您可以生成一个。
启用 API 并拥有密钥后,您可以通过添加查询参数apiKey=API_KEY
来开始发送请求。将API_KEY
替换为您的实际 API 密钥,然后就可以开始了!几乎所有的后端都应该可供您使用。在上面的链接中查看可用端点。
如果您使用的是 iOS,请使用快捷方式更方便地尝试 YoutubeDL-Material。有了这个快捷方式,您只需轻按两下即可轻松开始下载 YouTube 视频! (或者也许三个?)
您可以在此处下载快捷方式。
如果您有兴趣做出贡献,首先:太棒了!其次,请参阅贡献 wiki 页面中的指南/设置信息,这是帮助您站稳脚跟并开始编码的有用方法。
拉取请求总是受到赞赏!如果您对编码有点生疏,那也没有问题:我们随时可以帮助您学习。如果这太可怕了,那也没关系!您可以为您希望看到的功能或遇到的错误创建问题,这都有助于该项目的发展。
如果您有兴趣将应用程序翻译成新语言,请查看翻译 wiki 页面。
官方译者:
另请参阅参与该项目的贡献者列表。
该项目已获得 MIT 许可证 - 有关详细信息,请参阅 LICENSE.md 文件
该项目与 Google LLC、Alphabet Inc. 或 YouTube(或其子公司)没有任何关联,也没有得到他们的认可。