CLI(ターミナル)で実行されているダウンロードマネージャを探しています。
ツールは次の目的をカバーする必要があります。
YouTube URL リストを入力として使用するか、ファイルから URL リストを取得します。
ネットワーク接続が中断された場合は、ダウンロードを一時停止して再開する必要があります。
端末で実行する必要があります。ヘッドレスメディアサーバーで実行しています。
youtube-dl
私は現在nodejsスクリプトを使用しています。ただし、スクリプトには接続監視、ダウンロード整合性チェック、ダウンロード回復機能が不足しています。
Extreme Download Managerを試しましたが、ヘッドレスでは機能しません。
これを達成するためのすべての意見を高く評価します。
ベストアンサー1
2つの while
ループbash
で十分です。
while ! youtube-dl --batch-file /tmp/yt -i -c --socket-timeout 5; do while ! ping -c 1 -W 1 google.com; do echo "Network interface may down, please check your network"; sleep 10; done; echo "Network up but got url failed before, re-loop file after 5 seconds."; sleep 5; done
説明する:
youtube-dl
Pythonパッケージはapt
。/tmp/yt
ファイルにはURLの行別リストが含まれています。-i
誤ったURLエラーが発生した場合は、ファイルから次のURLを選択し続けます(ただし、「ping
失敗してネットワークが起動するのを待つ」ループを入力するソケットエラーではありません)。-c
部分的にダウンロードされたファイルの強制回復を示します。通常のジョブを再開するには、ファイル名が一貫した形式である必要があります(つまり、youtube-dl
次にフォーマットを変更することはできず、通常のジョブを再開することは期待できません)。個人的に使用する-o './%(title)s-%(upload_date)s-%(id)s.%(ext)s'
形式- 個人的に
--no-mtime
ファイルが「タッチ」されていることを確認する機能も追加しました(ビデオの更新時間ではなくダウンロード時間に基づいてソートされたファイルを一覧表示したい場合に便利です)。