腾讯云轻量服务器搭建全平台视频解析视频下载网站
由于最近一直觉得自己的服务器流量太多了,每个月只能用掉 不到20%,服务器资源大多时候也是空闲为主。于是又开始想着折腾了,然后平常有需要下载一些YouTube或者是tiktok上的视频,所以就找了一下网上的程序。命令行工具比较多,但是作为一个懒人肯定不会觉得用命令行就行了,做个网站随时随地访问才是真的舒服。于是就有了这个。
服务器我选择的是腾讯云的轻量服务器,原因无非就是价格便宜,CPU是独享的,线路相较于其他的云厂商算是优秀的那个。最低32一个月就能有 2 C(独享)2 G的硬件。本程序需要用到ffmpeg用来封装或者转码,所以CPU性能上还是有一点要求的。也不能选什么积分制的CPU,不然积分没了CPU限制太死估计网站会崩溃。由于我需要下载的是国际视频网站,所以不会服务器选择的也是海外的。如果只需要下载国内可以考虑境内服务器。这里我以新加坡服务器为例。进入腾讯云轻量服务器购买页面:腾讯云轻量服务器
选择好套餐,选择地域,再选择镜像为Debian/Ubuntu,不再推荐使用centos。购买完成之后再进入控制台。进入控制台后可以先重置密码。然后直接在页面登陆也行,在ssh工具里也行。
下面我以页面登陆操作进行讲解。点击登陆之后会以Lighthouse用户登陆,输入sudo su可以切换到root用户,在下面输入代码的时候如果你是root用户就不需要前面的sudo反之则要加上加上。
目前常见的视频解析下载器很多,常见的youtube-dl,YouTube-Get,yt-dlp等,这里我选择的是yt-dlp作为下载器,因为下载器是这个网站搭建的核心,为了避免后续更新不及时或者是想要下载别的平台的视频,这里选择yt-dlp是因为它支持的平台数量很多,国内的主流视频网站和直播网站也都有支持比如B站,爱奇艺,抖音,斗鱼。
yt-dlp的安装很简单,直接下载二进制文件就行。然后就能用了,但是我们网站程序要用的是py文件,所以后面还会介绍一下
可以下载十分迅速,存储文件的格式就是视频标题再加上YouTube的视频连接后缀。如果只是偶尔用用的话这样就够了。你可以指定字幕文件,视频分辨率,但是如果你想要mp4格式视频的话,有些分辨率是不含的,需要自己设置ffmpeg进行转码。PS: 查看yt-dlp支持哪些网站p/blob/master/supportedsites.md直接Ctrl + F查找即可,找不到可以试试拼音或者域名,或者英文
网站程序我这里选择的是alltubeGithub地址:ube我向来是宝塔的忠实用户,没有其他原因就是懒,所以还是腾讯云+宝塔国际版(aapanel)。安装NGINX和PHP即可环境准备好了直接解析好域名指向服务器,然后再下载alltube压缩包到网站程序。
现在已经可以使用了,但是如果就这样的话是会将你转到解析出来的视频源,而这种方式很大程度上导致视频没声音或者源服务器返回403,而且我们目前还是用的程序自带的youtube_dl,我们需要修改成yt-dlp,然后还需要配置ffmpeg转码,以及视频先经过服务器下载再提供给用户。
首先你需要考虑你是否需要面向大众使用,以及你的服务器配置以及流量。我用的腾讯云的新加坡,目前腾讯云正好升级了低价配置,32就可以买到2C的性能这相对而言是更加适用于这种网站的,因为解析视频以及ffmpeg转码、封装都比较吃CPU性能。腾讯云最低配2C2