From 668e497ae092d348e423f6e743f9298988a615e5 Mon Sep 17 00:00:00 2001
From: Christian Colglazier <christian@cacolglazier.com>
Date: Tue, 29 Jun 2021 18:24:25 -0400
Subject: [PATCH] Fixed private videos breaking the script

---
 youtube_api.py     | 4 ++++
 yt-unlist-saver.py | 1 +
 2 files changed, 5 insertions(+)

diff --git a/youtube_api.py b/youtube_api.py
index 4f84326..bc25db8 100644
--- a/youtube_api.py
+++ b/youtube_api.py
@@ -22,6 +22,10 @@ class YouTubeAPI(object):
   def getVideoInfo(self, id):
     snippet = self.getVideo('snippet', id)
     status = self.getVideo('status', id)
+
+    # Check for private videos
+    if len(snippet['items']) == 0:
+      return '', '', '', '', '', '', 'private', id
     snippet = snippet['items'][0]['snippet']
     status = status['items'][0]['status']
     title = snippet['title']
diff --git a/yt-unlist-saver.py b/yt-unlist-saver.py
index 860bbd7..25b8e1a 100644
--- a/yt-unlist-saver.py
+++ b/yt-unlist-saver.py
@@ -66,6 +66,7 @@ filteredVideos = [video for video in videoInfo if getPrivacy(video) == 'unlisted
 ydl_opts = {
   'outtmpl': '{}/%(uploader)s-%(title)s-%(id)s.%(ext)s'.format(playlistDir)
 }
+
 for v in filteredVideos:
 
   # Save metadata to file