web-dev-qa-db-ja.com

日付に基づいてYouTubeプレイリストまたはユーザーから動画をダウンロードする

Youtube-dlを使用して、特定のユーザーまたはプレイリストのyoutube動画のdate-wise downloadを実行できますか?

たとえば、今週にユーザーXがアップロードしたすべての動画をダウンロードします。

開始日と終了日が指定されたチャンネル/ユーザー/プレイリストからのYouTube動画のダウンロードの提供を探しています。

1
Jaydev

はい。 youtube-dlのmanページから:

--date DATE
          Download only videos uploaded in this date

--datebefore DATE
          Download only videos uploaded on or before this date (i.e.  inclusive)

--dateafter DATE
          Download only videos uploaded on or after this date (i.e.  inclusive)

そこには記載されていませんが、コードには隠されていますが、DATEYYYYMMDDまたは(now|today)[+-][0-9](day|week|month|year)(s)?の形式であるため、たとえば2016年8月17日は20160817になります。 7日前はnow-7daysまたはnow-1weekになります。

--datebefore--dateafterを一緒に使用して範囲を指定できます。

youtube-dl -i --dateafter 20160808 --datebefore 20160810 https://www.youtube.com/channel/CHANNEL

2016年8月8日から8月10日までの間にアップロードされたチャンネルからすべての動画をダウンロードします。

youtube-dl -i --dateafter now-1week https://www.youtube.com/playlist?list=PLAYLIST

過去1週間にアップロードされたプレイリストからすべての動画をダウンロードします。

-iオプションは、一部のビデオが利用できない場合にyoutube-dlが途中で終了するのを防ぎます。

youtube-dlは、ダウンロードしていなくても各ビデオをダウンロードしていると言います。例えば:

[download] Downloading video 1 of 123
[youtube] xxxxxxxxxxx: Downloading webpage
[youtube] xxxxxxxxxxx: Downloading video info webpage
[youtube] xxxxxxxxxxx: Extracting video information
[youtube] xxxxxxxxxxx: Downloading MPD manifest
[download] 2016-08-07 upload date is not in range 2016-08-08 - 2016-08-10
[download] Downloading video 2 of 123
...
4
Martin Thornton