I'm trying to extract all songs from one of my playlists in Spotify. Using the spotipy package in Python to help accomplish this. Below is the current code I have, which only gets 100 tracks. I tried poking around the internet for solutions but nothing appeared to work. Below is the code that I have so far.
#Import Library
import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns
import spotipy
from matplotlib import style
from spotipy import util
from spotipy.oauth2 import SpotifyClientCredentials
#Set up Connection
client_id = 'id' #Need to create developer profile
client_secret = 'secret'
username = 'username' #Store username
scope = 'user-library-read playlist-modify-public playlist-read-private'
redirect_uri='uri'
client_credentials_manager = SpotifyClientCredentials(client_id=client_id,
client_secret=client_secret)#Create manager for ease
sp = spotipy.Spotify(client_credentials_manager=client_credentials_manager)
token = util.prompt_for_user_token(username, scope, client_id,
client_secret, redirect_uri)
if token:
sp = spotipy.Spotify(auth=token)
else:
print("Can't get token for", username)
#Connect to the best playlist, like ever
playlist_id = 'playlist'
playlist = sp.user_playlist(username,playlist_id)
#Extract list of songs/tracks
tracks = playlist["tracks"];
songs = tracks["items"];
track_ids = []
track_names = []
for i in range(0, len(songs)):
if songs[i]['track']['id'] != None: # Removes local tracks, if any
track_ids.append(songs[i]['track']['id'])
track_names.append(songs[i]['track']['name'])