From 387a4e1c03df05de87eb4b90b00854ce414f29ae Mon Sep 17 00:00:00 2001
From: Robert Goldmann <deadlocker@gmx.de>
Date: Sat, 31 Aug 2024 00:18:01 +0200
Subject: [PATCH] SpotifyAutoPlaylistCreator: handle deletion of more than 100
 songs

---
 SpotifyAutoPlaylistCreator.py | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/SpotifyAutoPlaylistCreator.py b/SpotifyAutoPlaylistCreator.py
index 2007dc4..6649890 100644
--- a/SpotifyAutoPlaylistCreator.py
+++ b/SpotifyAutoPlaylistCreator.py
@@ -91,7 +91,7 @@ class SpotifyAutoPlaylistCreator:
         LOGGER.info(f'>>> Adding tracks to destination playlist "{destinationPlaylist["name"]}"...')
         randomTrackUris = self.__extract_track_uris(randomTracks)
 
-        for batch in self.__chunk_list(randomTrackUris, 100):
+        for batch in self.__chunk_list(randomTrackUris, 50):
             self._spotify.playlist_add_items(self._destinationPlaylistInfo['id'], batch)
 
     @staticmethod
@@ -122,7 +122,8 @@ class SpotifyAutoPlaylistCreator:
                     f'playlist "{destinationPlaylist["name"]}"...')
         existingTracksUris = self.__extract_track_uris(existingTracks)
         if existingTracksUris:
-            self._spotify.playlist_remove_all_occurrences_of_items(self._destinationPlaylistInfo['id'], existingTracksUris)
+            for batch in self.__chunk_list(existingTracksUris, 100):
+                self._spotify.playlist_remove_all_occurrences_of_items(self._destinationPlaylistInfo['id'], batch)
 
     def __get_playlist(self, username: str, playlistID: str) -> Dict:
         LOGGER.info(f'>>> Fetching playlist with ID: {playlistID} by {username}...')
-- 
GitLab