| title | emoji | colorFrom | colorTo | sdk | pinned |
|---|---|---|---|---|---|
YouTube 下载器 |
📺 |
red |
blue |
docker |
false |
这是一个基于 Flask 的 YouTube 视频下载器,支持搜索、预览和下载 YouTube 视频。
- 🔍 YouTube 搜索: 直接在应用中搜索 YouTube 视频
- 📺 视频预览: 查看视频信息、缩略图和可用格式
- ⬇️ 视频下载: 支持多种格式和质量选择
- 🎥 在线播放: 支持下载后在线播放视频
- 📊 下载进度: 实时显示下载进度和速度
- 🎛️ 格式选择: 选择不同的视频质量和格式
- 后端: Flask + yt-dlp
- 前端: HTML + CSS + JavaScript
- 部署: Docker + Gunicorn
- 视频处理: FFmpeg + yt-dlp
- 访问 Hugging Face Spaces
- 点击 "New Space"
- 选择 "Clone from Git"
- 输入此仓库的 URL
- 选择 "Docker" 作为 SDK
- 点击 "Create Space"
- 在 Hugging Face 上创建新的 Space
- 选择 "Docker" 作为 SDK
- 将以下文件上传到 Space:
Dockerfilerequirements.txtapp.pygunicorn.conf.pypyproject.tomlstatic/目录templates/目录
应用已经预配置为在 Hugging Face Spaces 上运行:
- 端口: 7860 (Hugging Face Spaces 标准端口)
- 环境变量:
PORT: 应用端口 (默认 7860)SESSION_SECRET: Flask 会话密钥
- Docker: 使用 Python 3.11 slim 镜像
- 依赖: FFmpeg 用于视频处理
# 使用 pip
pip install -r requirements.txt
# 或使用 uv (推荐)
uv sync# 开发模式
python app.py
# 生产模式
gunicorn --config gunicorn.conf.py app:app# 构建镜像
docker build -t youtube-downloader .
# 运行容器
docker run -p 7860:7860 youtube-downloader- 搜索视频: 在搜索框中输入关键词搜索 YouTube 视频
- 查看详情: 点击视频标题查看详细信息和可用格式
- 开始下载: 选择格式后点击下载按钮
- 查看进度: 下载过程中可以看到实时进度
- 在线播放: 下载完成后可以直接在线播放
- 此应用仅供教育和个人使用
- 请遵守 YouTube 的服务条款
- 不要下载受版权保护的内容
- 在 Hugging Face Spaces 上,存储空间有限,定期清理下载文件
- 基于
python:3.11-slim镜像 - 安装 FFmpeg 用于视频处理
- 使用 Gunicorn 作为 WSGI 服务器
- 支持视频流媒体和范围请求
- Flask: Web 框架
- yt-dlp: YouTube 视频下载库
- Gunicorn: WSGI HTTP 服务器
- 多线程: 支持并发下载
- 使用环境变量管理敏感配置
- 文件上传路径验证
- 会话管理和 CSRF 保护
MIT License
欢迎提交 Issue 和 Pull Request!
如果您在使用过程中遇到问题,请创建 Issue 或联系维护者。