From 2a89badcb6e2af8e87cc4ab55ad9e91d7ea359bb Mon Sep 17 00:00:00 2001 From: Christian Colglazier Date: Mon, 28 Jun 2021 21:40:17 -0400 Subject: [PATCH] Skip duplicate downloads --- yt-unlist-saver.py | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/yt-unlist-saver.py b/yt-unlist-saver.py index b9e08fa..7837efa 100644 --- a/yt-unlist-saver.py +++ b/yt-unlist-saver.py @@ -67,16 +67,14 @@ ydl_opts = { 'outtmpl': '{}/%(uploader)s-%(title)s-%(id)s.%(ext)s'.format(playlistDir) } for v in filteredVideos: - print(getYear(v), getId(v)) - videoURL = 'https://www.youtube.com/watch?v='+getId(v) - with youtube_dl.YoutubeDL(ydl_opts) as ydl: - ydl.download([videoURL]) - # Save metadata to file - description = open('{}/{}-{}-{}.txt'.format(playlistDir, - getChannel(v), - getTitle(v), - getId(v)), 'w') + # Save metadata to file + descriptionFile = '{}/{}-{}-{}.txt'.format(playlistDir, + getChannel(v), + getTitle(v), + getId(v)) + if not os.path.exists(descriptionFile): + description = open(descriptionFile, 'w') description.write('Title: ' + getTitle(v) + '\n') description.write('Uploaded: ' + getUploadTime(v) + '\n') description.write('Channel: ' + getChannel(v) + '\n') @@ -85,3 +83,8 @@ for v in filteredVideos: description.write('Tags: ' + getTags(v) + '\n') description.write('Video ID: ' + getId(v) + '\n') description.close() + + videoURL = 'https://www.youtube.com/watch?v='+getId(v) + with youtube_dl.YoutubeDL(ydl_opts) as ydl: + ydl.download([videoURL]) +