このプロジェクトについて

youtube-dlはYouTube.comおよび多数の動画プラットフォームから動画をダウンロードするためのコマンドラインプログラムです。Pythonで書かれており、Linux、macOS、Windowsに対応するクロスプラットフォームツールで、Python 2.6/2.7または3.2以上が必要です。 ## インストール 複数の方法で利用可能です: - 直接バイナリダウンロード: `sudo curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl` - pip: `sudo -H pip install --upgrade youtube-dl` - macOS Homebrew: `brew install youtube-dl` - macOS MacPorts: `sudo port install youtube-dl` - Windows: .exeをダウンロードしPATH上に配置(System32には入れない)。 ## コア機能 - 専用Extractorを使用して1000以上の対応サイトから動画と字幕をダウンロード。 - `--playlist-start`、`--playlist-end`、`--playlist-items`による範囲選択、逆順、ランダム順などフルプレイリストサポート。 - 解像度、コンテナ、コーデック、ファイルサイズ、再生時間、視聴数、日付でフィルタリングしたビデオフォーマットの選択と絞り込み。 - 偽のX-Forwarded-Forヘッダー、カスタム国コード、IPブロック例外による地理的制限の回避。 - HTTP/HTTPS/SOCKSプロキシ、IPv4/IPv6強制、ソケットタイムアウト、カスタムユーザーエージェントやリフェラーなどのネットワークオプション。 - 高度なダウンロードシーン向けの外部ダウンローダー対応(aria2c、curl、ffmpeg、wget、axelなど)。 - 部分的にダウンロードしたファイルの再開;全体および個別フラグメントの両方で再試行回数を設定可能。 - タイトル、アップローダー、アップロード日、解像度、フォーマットなど豊富なメタデータキーを用いた出力ファイル名テンプレート化。 - サポートされる出力アーティファクト:サムネイル(単一または全フォーマット)、`.info.json`メタデータ、`.description`ファイル、`.annotations.xml`。 ## よくある使用パターン 基本ダウンロード: `youtube-dl <URL>` プレイリストの5〜10項目をダウンロード: `youtube-dl --playlist-items 5-10 <playlist_URL>` 最高品質のビデオのみを選択: `youtube-dl -f "bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]" <URL>` 出力テンプレートを設定: `youtube-dl -o "%(title)s [%(id)s].%(ext)s" <URL>` 字幕をダウンロード: コマンドに `--write-subs --sub-langs en` を追加。 ダウンロードせずに動作確認: `youtube-dl --skip-download <URL>` JSONメタデータを出力: `youtube-dl --dump-json <URL>` レート制限: `youtube-dl --limit-rate 50K <URL>` ## 設定 オプションは設定ファイルに記録できます: - グローバル: `/etc/youtube-dl.conf` - ユーザー: `~/.config/youtube-dl/config`(Linux/macOS)または `%APPDATA%/youtube-dl/config.txt`(Windows) `--config-location`でカスタムパスを指定、`--ignore-config`で設定ファイルを読まずに実行。 ## 組み込み youtube-dlはPythonライブラリとしても利用でき、Extractorやダウンロードロジックをスクリプトやアプリケーションに組み込むことができます。 ## ライセンス パブリックドメインとしてリリースされており、任意の方法で修正、再配布、利用が可能です。