Esempio n. 1
0
        s = n + 1
        if cell == '':
            empty_cell = cell
        else:
            dict_1[s] = {}
            sep1 = ','
            data = cell.split(sep1)
            term_1 = cell
            term_2 = term_1.replace('(', '').replace(')', '')
            term_3 = term_2.replace('&', '').replace('feat.', '')
            return_list.append(term_3)
    return return_list  #returns dictionary of search terms and sheet name


search_list = search_sheet()
#exclusion_p1 = [playlist_name]
#exclusion_p2 = functions.exclusion_terms()
#exclusion_list = exclusion_p1 + exclusion_p2

# worksheet_list = spreadsheet.worksheets()
# for n,worksheet in enumerate(worksheet_list):
#     print(str(n)+" : "+str(worksheet))

exclusion_list = []
track_list = functions.track_search(search_list)
functions.add_to_playlist(functions.playlist_creation("Top 99 of Decade"),
                          track_list, exclusion_list)

#creation_dict = playlist_check_and_creation(track_id_list) #creates dictionary or finds existing
#add_to_playlist(creation_dict)
Esempio n. 2
0
from spotipy.oauth2 import SpotifyClientCredentials
import spotipy
import functions as f
import pprint

tt = f.top_tracks()  #get dictionary of top track lists from Spotify
for x in tt:

    playlist_id = f.playlist_creation(
        x)  #create playlist with name defined in f.top_tracks
    current = f.playlist_tracks(
        playlist_id)  #get the current tracks in the playlist
    add_list = []
    remove_list = []

    for track in tt[x]:  #for track in new list
        if track not in current:
            add_list.append(track)  #add the track to be added

    for track in current:  #for track in current list
        if track not in tt[x]:
            remove_list.append(track)

    if add_list:
        print("add_list")
        pprint.pprint(add_list)
        print("*****")
        print('Adding songs to Saved for you boss!')
        f.add_to_saved(add_list)
        f.add_to_playlist(playlist_id, add_list, [])
    if remove_list:
            term_3 = term_2.replace('&', '').replace('feat.', '')
            return_list.append(term_3)
    return return_list  #returns dictionary of search terms and sheet name


playlist_name = 'STARRED'
exclusion_p1 = [playlist_name]
exclusion_p2 = functions.exclusion_terms()
exclusion_list = exclusion_p1 + exclusion_p2

worksheet_list = spreadsheet.worksheets()
for n, worksheet in enumerate(worksheet_list):
    print(str(n) + " : " + str(worksheet))

while True:
    for n, worksheet in enumerate(worksheet_list):
        print(str(n) + " : " + str(worksheet))
    sheet_number = int(input("What is the playlist number? "))
    search_list = create_search_dictionary(
        sheet_number)  #grabs sheet track search terms and name

    #track_id_list = track_convert(search_list,current_sheet_name) #creats spotify track id list
    track_list = functions.track_search(search_list)
    functions.add_to_playlist(functions.playlist_creation(playlist_name),
                              track_list, exclusion_list)

    #creation_dict = playlist_check_and_creation(track_id_list) #creates dictionary or finds existing
    #add_to_playlist(creation_dict)
    print()
    print()
Esempio n. 4
0
user_playlists = functions.get_user_playlists()

#Generate possible playlists to seach
q = ['Q1', 'Q2', 'Q3', 'Q4']
y = list(range(2010, 2051, 1))
names = []
for r in q:
    for s in y:
        names.append(str(s) + " " + r)

#Find the actual playlists that exist
pl_actual = {}
for pl_name in names:  #for the names we just made
    for user_pl_name in user_playlists:  #for the actual playlists that exist
        if pl_name == user_pl_name:  #if they match
            pl_actual[pl_name] = user_playlists[
                user_pl_name]  #append ID to list

#find ID of mega playlist
pl_id = functions.playlist_creation(mega_playlist)  #get mega playlist

#add songs from each baby playlist to mega playlist using exclusions
for playlist_id in sorted(pl_actual.keys()):  # for reach yearly playlist
    print("Getting songs from: " + str(playlist_id))
    exclusion_list = functions.playlist_tracks(
        pl_id)  #songs already in mega playlist
    track_list = functions.playlist_tracks(pl_actual[playlist_id])
    functions.add_to_playlist(pl_id, track_list, exclusion_list)

print("Done")
Esempio n. 5
0
        quarter_dict[x] = str(track_dict[x].year) + " Q2"
    elif 7 <= track_dict[x].month <= 9:
        quarter_dict[x] = str(track_dict[x].year) + " Q3"
    elif 10 <= track_dict[x].month <= 12:
        quarter_dict[x] = str(track_dict[x].year) + " Q4"

for x in quarter_dict:  #create list of playlist names
    if quarter_dict[x] not in playlist_list:
        playlist_list.append(quarter_dict[x])
    #playlist_list.append(quarter_dict[x]) if quarter_dict[x] not in playlist_list except: pass

final_playlist_dict = {}  #holds playlist names/ids

for x in playlist_list:  #checks by name ex 2017 Q4, gets playlist IDS or creates them
    #input is a playlist name string (x)
    final_playlist_dict[x] = functions.playlist_creation(x)

plist_and_tracks = {}
for x in quarter_dict:  #creates dictionary of playlist IDS as keys and track list as values
    #for each track in the quarter dict (track ID as key and playlist name as value)
    if final_playlist_dict[quarter_dict[
            x]] in plist_and_tracks:  #if playlist id exists already, skip
        pass
    else:
        plist_and_tracks[final_playlist_dict[quarter_dict[x]]] = [
        ]  #else, create it
    plist_and_tracks[final_playlist_dict[quarter_dict[x]]].append(
        x)  #then add track to appropriate list

exclusion_list = functions.exclusion_terms()  #creates exclusion terms
for playlist in plist_and_tracks:  #for each playlist, add associated track list