/Users/al02405465/Development/AI-workshop/ytvdoClip/.venv/bin/python clip_youtube.py "YouTube網址" -s 01:30 -e 02:45
source .venv/bin/activate python clip_youtube.py "YouTube網址" -s 01:30 -e 02:45# YouTube Video Clipper 🎬
一個簡單的 CLI 工具,可以下載 YouTube 影片的指定片段到本機。
✅ 支援指定開始和結束時間下載影片片段
✅ 多種時間格式支援 (HH:MM:SS, MM:SS, 或秒數)
✅ 自動命名避免檔案衝突
✅ 使用 yt-dlp 和 FFmpeg 高效處理
macOS:
brew install ffmpegUbuntu/Debian:
sudo apt update
sudo apt install ffmpegWindows: 從 FFmpeg 官網 下載並安裝
# 建議使用虛擬環境
python3 -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
# 安裝依賴
pip install -r requirements.txtpython clip_youtube.py "YOUTUBE_URL" -s START_TIME -e END_TIME使用 MM:SS 格式:
python clip_youtube.py "https://www.youtube.com/watch?v=dQw4w9WgXcQ" -s 01:30 -e 02:45使用秒數:
python clip_youtube.py "https://www.youtube.com/watch?v=dQw4w9WgXcQ" -s 90 -e 165使用 HH:MM:SS 格式並指定輸出目錄:
python clip_youtube.py "https://www.youtube.com/watch?v=dQw4w9WgXcQ" -s 00:01:30 -e 00:02:45 -o my_clipsURL: YouTube 影片網址 (必填)-s, --start: 開始時間 (必填)-e, --end: 結束時間 (必填)-o, --output: 輸出目錄 (選填,預設:downloads)-q, --quality: 影片品質 (選填,預設:best)
支援以下三種格式:
HH:MM:SS- 例如:01:30:45MM:SS- 例如:01:30- 秒數 - 例如:
90
優點:
- ✅ 零成本
- ✅ 無需伺服器
- ✅ 完全控制,無隱私疑慮
- ✅ 處理速度快
缺點:
- ❌ 需要在本機安裝依賴
- ❌ 無法遠端使用
適用情境: 個人使用、頻繁下載、注重隱私
可選擇的免費平台:
- 免費額度: 750 小時/月
- 限制: 15 分鐘無活動會休眠
- 部署: 支援 Docker
- 適合: 輕量使用
- 免費額度: $5 credit/月
- 限制: 用完額度需付費
- 部署: 簡單易用
- 適合: 測試階段
- 免費額度: 3GB 儲存空間
- 限制: 需要信用卡驗證
- 部署: 支援全球邊緣節點
- 適合: 低流量應用
注意事項:
- YouTube 下載較耗資源,免費方案可能有性能限制
- 需考慮儲存空間 (建議下載後立即串流給用戶,不保存在伺服器)
- 部分平台禁止 YouTube 下載服務
建立 Docker 容器,隨時啟動使用:
FROM python:3.11-slim
RUN apt-get update && apt-get install -y ffmpeg
WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY clip_youtube.py .
ENTRYPOINT ["python", "clip_youtube.py"]使用方式:
docker build -t youtube-clipper .
docker run -v $(pwd)/downloads:/app/downloads youtube-clipper "URL" -s 01:30 -e 02:45適合定期下載特定內容:
- 利用 GitHub Actions 的免費額度
- 每月 2000 分鐘免費運算時間
- 可設定排程自動執行
輕量個人使用:
→ 方案 1 (本機 CLI)
偶爾使用 + 多裝置存取:
→ 方案 2A (Render 免費部署)
需要容器化/隔離環境:
→ 方案 3 (Docker)
定期自動化下載:
→ 方案 4 (GitHub Actions)
- 請遵守 YouTube 服務條款
- 下載的內容僅供個人使用
- 注意版權問題,勿用於商業用途
- 部分地區可能有網路限制
- yt-dlp: YouTube 影片下載
- FFmpeg: 影片剪輯
- Click: CLI 介面
MIT
歡迎提交 Issue 或 Pull Request!