ReClip 媒体下载器:第一次改代码的三处实操指南

ReClip 媒体下载器:第一次改代码的三处实操指南

【免费下载链接】reclip Download videos from almost any website. Lightweight, self-hosted media downloader with a clean web UI. 【免费下载链接】reclip 项目地址: https://gitcode.com/GitHub_Trending/rec/reclip

ReClip 是一款轻量、可自托管的开源媒体下载器,粘贴上千个网站的视频链接就能拿到 MP4 视频或 MP3 音频。如果你刚把仓库克隆下来、还没动过一行代码,这篇就是为你准备的:全程十几分钟,改完端口、下载目录和界面语言三处,都能在浏览器里亲眼看到结果。

ReClip 媒体下载器网页界面:粘贴链接后选择 MP4 或 MP3 下载

先把服务跑起来

ReClip 对系统只有三个硬依赖:python3、yt-dlp、ffmpeg。reclip.sh 启动时会逐一检查,缺哪个就直接打印对应的 brew install 或 apt install 命令;都齐全时,它会自动建 venv 虚拟环境并装好 Flask 和 yt-dlp。

git clone https://gitcode.com/GitHub_Trending/rec/reclip
cd reclip
./reclip.sh

终端出现 ReClip is running at http://localhost:8899 后,浏览器打开就能看到粘贴链接、选格式、点下载的主界面。下面的所有改动都基于这个正在运行的服务。

把监听端口从 8899 换成你顺手的数字

默认 8899 端口容易和本机其他服务撞车,所以先换它。入口在 app.py 第 192 行,打开文件,把这一行:

-    port = int(os.environ.get("PORT", 8899))
+    port = int(os.environ.get("PORT", 9000))

改完保存,终端 Ctrl+C 停掉服务,再跑一次 ./reclip.sh。启动提示会打印新地址,用浏览器访问 http://localhost:9000,界面和原来一模一样。

零代码方案

reclip.sh 第 43 行 和 app.py 都优先读 PORT 环境变量,所以不改文件也能换:

PORT=9000 ./reclip.sh

注意环境变量的优先级高于代码里的默认值,这也是后面排错里最常见的一个原因。如果你用 Docker 部署,只改 docker-compose.yml 第 7 行 冒号左边的宿主机端口(如 "9000:8899"),容器内保持 8899 即可。

让下载文件落到指定目录

默认下载物全落在项目根目录的 downloads/ 里,时间一长不好找。这个路径只由一行决定,就在 app.py 第 10 行:

-    DOWNLOAD_DIR = os.path.join(os.path.dirname(__file__), "downloads")
+    DOWNLOAD_DIR = "/data/media/downloads"

重启服务后随便下载一条,你会发现文件已经先落盘到新目录,网页端依旧正常回传给你,界面行为不受影响。Windows 上请写成原始字符串,比如 r"D:\media\downloads",否则反斜杠会报转义错误。

Docker 用户的零代码方案

docker-compose.yml 第 8-9 行 默认挂的是命名卷 reclip-downloads:/app/downloads,把它改成宿主机目录挂载(例如 /your/path:/app/downloads),docker compose up -d --build 重建容器,文件就直接出现在你指定的位置,代码一行不用动。

把界面默认语言改成中文

前端整个就是 templates/index.html 一个文件,没有构建步骤,保存即生效。先在 第 2 行 声明语言:

-<html lang="en">
+<html lang="zh-CN">

这一行影响浏览器的语言识别、翻译插件和读屏软件。接着替换界面文案:第 390 行 输入框占位文字 Paste one or more URLs... 改成 粘贴一个或多个链接...,第 398 行 按钮文字 Fetch 改成 获取。卡片上的 Download / Download All 写在 JS 模板字符串里,在同一个文件搜索这两个词就能定位,顺手换成 下载 / 全部下载。最后把 第 6 行 的标签标题改成 ReClip 媒体下载器。

刷新浏览器,界面就是中文的了。

改完之后这样验

  1. Ctrl+C 停止后重跑 ./reclip.sh,终端输出里应出现新端口地址。
  2. 浏览器访问新地址,页面正常打开,标签页显示“ReClip 媒体下载器”。
  3. 右键 → 查看网页源代码,确认第二行是 lang="zh-CN"。
  4. 随便下载一条 MP3,打开你新设的目录,确认里面出现了 .mp3 文件。

几个容易踩到的症状

端口改了,浏览器还是打不开

多半是忘记重启服务,或者命令行里同时带着 PORT 环境变量,它覆盖了代码里的默认值。先 echo $PORT 看一眼。

新下载目录里是空的

八成是只改了变量名没改第 10 行的值,或者目标目录不存在且进程没有权限创建。手动把目录建好再重启一次。

Docker 里页面能开,宿主机目录却看不到文件

命名卷没有改成宿主机目录挂载。检查 docker-compose.yml 的 volumes 段,改完必须重建容器才生效。

ReClip 的后端全部就是 app.py 这不到两百行,依赖只有 Flask 和 yt-dlp 两个。改完这三处之后,建议接着看 /api/info 和 /api/download 两个路由——清晰度选项怎么来的、纯音频模式怎么触发,都在这几十行里,下一步的改法你自己就能想到。

【免费下载链接】reclip Download videos from almost any website. Lightweight, self-hosted media downloader with a clean web UI. 【免费下载链接】reclip 项目地址: https://gitcode.com/GitHub_Trending/rec/reclip

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值