def createNewPlaylist(artist_name): cur = db.cursor() sql_create_playlists = '''CREATE TABLE IF NOT EXISTS playlist (id INTEGER PRIMARY KEY AUTO_INCREMENT,rootArtist VARCHAR(128));''' sql_create_songs = '''CREATE TABLE IF NOT EXISTS songs (playlistId INTEGER, songOrder INTEGER,artistName VARCHAR(128), albumName VARCHAR(256), trackName VARCHAR(256));''' cur.execute(sql_create_playlists) cur.execute(sql_create_songs) sql_insert_artist_name = '''INSERT INTO playlist (rootArtist) VALUES ('%s');''' % ( artist_name) cur.execute(sql_insert_artist_name) playlistId = cur.lastrowid root_artist_id = fetchArtistId(artist_name) edgelist = getEdgeList(root_artist_id, 2) g = pandasToNetworkX(edgelist) songs = [] for i in range(30): artist_id = (randomCentralNode(g)) songOrder = i + 1 artist_name = fetchArtistInfo(artist_id)['name'] album_ids = fetchAlbumIds(artist_id) random_album = np.random.choice(album_ids) random_album_name = fetchAlbumInfo(random_album)['name'] random_track_name = fetchARandomTrack(random_album)[1] songs.append((playlistId, songOrder, artist_name, random_album_name, random_track_name)) insertSongs = '''INSERT INTO songs (playlistId, songOrder, artistName, albumName, trackName) VALUES (%s, %s, %s, %s, %s)''' cur.executemany(insertSongs, songs) db.commit() print "playlists updated"
def testWriteArtistsInfo(): artistId1 = fetchArtistId('earth wind fire') artistId2 = fetchArtistId('patsy cline') artistId3 = fetchArtistId('五月天') assert artistId1=='4QQgXkCYTt3BlENzhyNETg' assert artistId2=='7dNsHhGeGU5MV01r06O8gK' assert artistId3=='16s0YTFcyjP4kgFwt7ktrY' albumIds1 = fetchAlbumIds(artistId1) albumIds2 = fetchAlbumIds(artistId2) albumIds3 = fetchAlbumIds(artistId3) print "albumIds1=",len(albumIds1) print "albumIds2=",len(albumIds2) print "albumIds3=",len(albumIds3) assert len(albumIds1) == 20 assert len(albumIds2) == 20 assert len(albumIds3) == 17 artistInfo1 = fetchArtistInfo(artistId1) artistInfo2 = fetchArtistInfo(artistId2) artistInfo3 = fetchArtistInfo(artistId3) albumInfoList = [] for albumId in albumIds1: albumInfoList.append(fetchAlbumInfo(albumId)) for albumId in albumIds2: albumInfoList.append(fetchAlbumInfo(albumId)) for albumId in albumIds3: albumInfoList.append(fetchAlbumInfo(albumId)) writeArtistsTable([artistInfo1, artistInfo2, artistInfo3]) writeAlbumsTable(albumInfoList) bcd =getBarChartData() # asset that there were 11 albums in the 80s and 21 in the 00s assert(bcd[1][8] == 11) assert(bcd[1][10] == 21)
import sys from fetchArtist import fetchArtistId, fetchArtistInfo from fetchAlbums import fetchAlbumIds, fetchAlbumInfo from csvUtils import writeArtistsTable, writeAlbumsTable from barChart import plotBarChart if __name__ == '__main__': artist_names = sys.argv[1:] print "input artists are ", artist_names # YOUR CODE HERE artist_id_list = [] artist_info_list = [] for name in artist_names: artistId = fetchArtistId(name) #get artistID artist_id_list.append(artistId) #append it to the list artistInfo = fetchArtistInfo(artistId) #get artistInfo dictionary artist_info_list.append(artistInfo) #append it to the artist_info_list #album_ids_list = [] album_info_list = [] for artistId in artist_id_list: albumIds = fetchAlbumIds(artistId) #get list of albumIds #album_ids_list.append(albumIds) #append list to album_ids_list for albumId in albumIds: #for each album in one artist's list of album IDs albumInfo = fetchAlbumInfo(albumId) #get albumInfo dictionary album_info_list.append( albumInfo) #append it to the album_info_list writeArtistsTable(artist_info_list) writeAlbumsTable(album_info_list) plotBarChart()
import sys from fetchArtist import fetchArtistId, fetchArtistInfo from fetchAlbums import fetchAlbumIds, fetchAlbumInfo from artistNetworks import getRelatedArtists, getDepthEdges, getEdgeList, writeEdgeList from analyzeNetworks import readEdgeList, degree, combineEdgelists, pandasToNetworkX, randomCentralNode from random import randint import requests from io import open import csv if __name__ == '__main__': artist_names = sys.argv[1:] a = artist_names[0] ID = fetchArtistId(a) combined_Edge_List = getEdgeList(ID, 2) if len(artist_names) > 1: for artist_name in artist_names: ID = fetchArtistId(artist_name) edgeList1 = getEdgeList(ID, 2) combined_Edge_List = combineEdgelists(combined_Edge_List, edgeList1) b = combined_Edge_List c = pandasToNetworkX(b) nodes = [] albums = [] tracks = [] tracks_names = [] for i in range(30): d = randomCentralNode(c) nodes.append(d) for i in range(30):
import sys from io import open from fetchArtist import fetchArtistId, fetchArtistInfo from fetchAlbums import fetchAlbumIds, fetchAlbumInfo from csvUtils import writeArtistsTable, writeAlbumsTable from barChart import plotBarChart if __name__ == '__main__': artist_names = sys.argv[1:] print "input artists are ", artist_names # YOUR CODE HERE artist_info_list = [] album_info_list = [] for name in artist_names: artist_id = fetchArtistId(name) artist_info = fetchArtistInfo(artist_id) artist_info_list.append(artist_info) album_ids = fetchAlbumIds(artist_id) for album in album_ids: alb_info = fetchAlbumInfo(album) album_info_list.append(alb_info) writeArtistsTable(artist_info_list) writeAlbumsTable(album_info_list) plotBarChart()
import sys from fetchArtist import fetchArtistId, fetchArtistInfo from fetchAlbums import fetchAlbumIds, fetchAlbumInfo from csvUtils import writeArtistsTable, writeAlbumsTable from barChart import plotBarChart if __name__ == '__main__': artist_names = sys.argv[1:] print "input artists are ", artist_names infos=[] ids=[] album_infos=[] for current_name in artist_names: print "current name is", current_name current_id=fetchArtistId(current_name) print "current id is", current_id current_info=fetchArtistInfo(current_id) infos.append(current_info) ids.append(current_id) for new_id in ids: album_ids=fetchAlbumIds(new_id) for album_id in album_ids: album_info=fetchAlbumInfo(album_id) album_infos.append(album_info) writeArtistsTable(infos) print "album_info is ", album_info writeAlbumsTable(album_infos)
import sys from fetchArtist import fetchArtistId, fetchArtistInfo from fetchAlbums import fetchAlbumIds, fetchAlbumInfo from csvUtils import writeArtistsTable, writeAlbumsTable from barChart import plotBarChart if __name__ == '__main__': artist_names = sys.argv[1:] print "input artists are ", artist_names # YOUR CODE HERE artist_list = [] album_list = [] for hahaha in artist_names: get_artist_id = fetchArtistId(hahaha) get_artist_info = fetchArtistInfo(get_artist_id) artist_list.append(get_artist_info) get_album_ids = fetchAlbumIds(get_artist_id) for album in get_album_ids: get_album_info = fetchAlbumInfo(album) album_list.append(get_album_info) writeArtistsTable(artist_list) writeAlbumsTable(album_list) #getBarChartData() plotBarChart()
import sys from fetchArtist import fetchArtistId, fetchArtistInfo from fetchAlbums import fetchAlbumIds, fetchAlbumInfo from csvUtils import writeArtistsTable, writeAlbumsTable from barChart import plotBarChart if __name__ == '__main__': artist_names = sys.argv[1:] print "input artists are ", artist_names artistList = [] for name in artist_names: artID = fetchArtistId(name) artistList.append(artID) # generate a list of all artist names artistInfoDict = [] albumDictList = [] for identity in artistList: # indexing through artist IDs artistInfoDict.append(fetchArtistInfo( identity)) # create list of artist info dictionaries identityAlbumList = fetchAlbumIds( identity) # generate list of albums for artist identity for album in identityAlbumList: albumDictList.append(fetchAlbumInfo(album)) writeArtistsTable(artistInfoDict) # write artist information to CSV writeAlbumsTable(albumDictList) # write album information to CSV plotBarChart()
import sys from fetchArtist import fetchArtistId, fetchArtistInfo from fetchAlbums import fetchAlbumIds, fetchAlbumInfo from csvUtils import writeArtistsTable, writeAlbumsTable from barChart import plotBarChart if __name__ == '__main__': artist_names = sys.argv[1:] print "input artists are ", artist_names # YOUR CODE HERE ArtistIds = [] ArtistInfos = [] AlbumIds = [] AlbumInfos = [] for name in artist_names: #get id ArtistIds.append(fetchArtistId(name)) for artistId in ArtistIds: ArtistInfos.append(fetchArtistInfo(artistId)) for artistId in ArtistIds: ids = fetchAlbumIds(artistId) for aid in ids: AlbumIds.append(aid) for albumId in AlbumIds: AlbumInfos.append(fetchAlbumInfo(albumId)) writeArtistsTable(ArtistInfos) writeAlbumsTable(AlbumInfos) plotBarChart()
def testFetchArtistId(): assert fetchArtistId('Missy Elliott') == u'2wIVse2owClT7go1WT98tk' assert fetchArtistId('Robyn') == u'6UE7nl9mha6s8z0wFQFIZ2'
import csv from io import open from fetchArtist import fetchArtistId, fetchArtistInfo from fetchAlbums import fetchAlbumIds, fetchAlbumInfo, fetchRndmSong from analyzeNetworks import readEdgeList, degree, combineEdgeLists, pandasToNetworkX, randomCentralNode from artistNetworks import getRelatedArtists, getDepthEdges, getEdgeList, writeEdgeList import matplotlib.pyplot as plt if __name__ == '__main__': artist_names = sys.argv[1:] # Turns the artist names into artist IDs Artist_IDs = [] for artist in artist_names: Artist_IDs.append(fetchArtistId(artist)) # Removes None from lists created by invalid artists # I addend in an exception to deal with invalid artists in fetchArtistId Artist_IDs = [x for x in Artist_IDs if x is not None] # Combines edge lists into one master list depth = 2 edgeList = getEdgeList(Artist_IDs[0], depth) if len(Artist_IDs) > 1: for artist in Artist_IDs[1:]: temp = getEdgeList(artist,depth) edgeList = combineEdgeLists(edgeList,temp) g = pandasToNetworkX(edgeList)
import sys import requests from fetchArtist import fetchArtistId, fetchArtistInfo from fetchAlbums import fetchAlbumIds, fetchAlbumInfo from csvUtils import writeArtistsTable, writeAlbumsTable from barChart import plotBarChart if __name__ == '__main__': artist_names = sys.argv[1:] print "input artists are ", artist_names artistlist = [] album_list = [] for i in range(len(artist_names)): artistinfo = fetchArtistInfo(fetchArtistId(artist_names[i])) artistlist.append(artistinfo) artist_id = artistinfo['id'] albums = fetchAlbumIds(artist_id) for album in albums: albuminfo = fetchAlbumInfo(album) album_list.append(albuminfo) writeAlbumsTable(album_list) writeArtistsTable(artistlist) plotBarChart()
import sys from fetchArtist import fetchArtistId, fetchArtistInfo from fetchAlbums import fetchAlbumIds, fetchAlbumInfo from csvUtils import writeArtistsTable, writeAlbumsTable from barChart import plotBarChart if __name__ == '__main__': artist_names = sys.argv[1:] print "input artists are ", artist_names # YOUR CODE HERE album_info_list = [] artist_info_list = [] for artist in artist_names: artist_id = fetchArtistId(artist) album_info_list.append(fetchAlbumInfo(fetchAlbumIds(fetchArtistId(artist))[0])) artist_info_list.append(fetchArtistInfo(fetchArtistId(artist))) writeArtistsTable(artist_info_list) writeAlbumsTable(album_info_list) plotBarChart()
import sys from fetchArtist import fetchArtistId, fetchArtistInfo from fetchAlbums import fetchAlbumIds, fetchAlbumInfo from csvUtils import writeArtistsTable, writeAlbumsTable from barChart import plotBarChart if __name__ == '__main__': artist_names = sys.argv[1:] print "input artists are ", artist_names # YOUR CODE HERE artist_id_list = [] artist_info_list = [] album_id_list = [] album_info_list = [] for name in artist_names: artist_id_list.append(fetchArtistId(name)) print artist_id_list for artist_id in artist_id_list: artist_info_list.append(fetchArtistInfo(artist_id)) print artist_info_list for artist_id in artist_id_list: album_id_list.append(fetchAlbumIds(artist_id)) print album_id_list for album_id in album_id_list: album_info_list.append(fetchAlbumInfo(album_id)) print album_info_list writeArtistsTable(artist_info_list) writeAlbumsTable(album_info_list) plotBarChart()
ARTIST_ID = artist['id'] ARTIST_NAME = artist['name'] ARTIST_FOLLOWERS = artist['followers'] ARTIST_POPULARITY = artist['popularity'] f.write('%s, "%s", %s, %s\n' % (ARTIST_ID, ARTIST_NAME, ARTIST_FOLLOWERS, ARTIST_POPULARITY)) #writing to a file its parameter artist_info_list = [{ 'id': '26dSoYclwsYLMAKD3tpOr4', 'name': 'Britney Spears', 'followers': 941683, 'popularity': 83 }] artist_info_list = (fetchArtistInfo(fetchArtistId("Britney Spears"))) writeArtistsTable(artist_info_list) def writeAlbumsTable(album_info_list): s = open('albums.csv', 'r+') s.write(u'ARTIST_ID,ALBUM_ID,ALBUM_NAME,ALBUM_YEAR,ALBUM_POPULARITY') for album in album_info_list: ARTIST_ID = album['artist_id'] ALBUM_ID = album['album_id'] ALBUM_NAME = album['name'] ALBUM_YEAR = album['year'] ALBUM_POPULARITY = album['popularity'] s.write( '%s, "%s", %s, %s\n' % (ARTIST_ID, ALBUM_ID, ALBUM_NAME, ALBUM_YEAR, ALBUM_POPULARITY))
import sys from fetchArtist import fetchArtistId, fetchArtistInfo from fetchAlbums import fetchAlbumIds, fetchAlbumInfo from csvUtils import writeArtistsTable, writeAlbumsTable from barChart import plotBarChart if __name__ == '__main__': artist_names = sys.argv[1:] print "input artists are ", artist_names artist_id = [] album_id = [] artist_info = [fetchArtistInfo(fetchArtistId(i)) for i in artist_names] album_info = [] for i in artist_info: for item in fetchAlbumIds(i['id']): album_info.append(fetchAlbumInfo(item)) writeArtistsTable(artist_info) writeAlbumsTable(album_info) plotBarChart()
import sys import requests from fetchArtist import fetchArtistId, fetchArtistInfo from fetchAlbums import fetchAlbumIds, fetchAlbumInfo from csvUtils import writeArtistsTable, writeAlbumsTable from barChart import plotBarChart, getBarChartData if __name__ == '__main__': artist_names = sys.argv[1:] print ("input artists are ", artist_names) # YOUR CODE HERE artist_ids = [] for i in range(len(artist_names)): artist_ids.append(fetchArtistId(artist_names[i])) artist_info_list = [] artist_album_list = {} for i in range(len(artist_ids)): artist_info_list.append(fetchArtistInfo(artist_ids[i])) artist_album_list[i]=fetchAlbumIds(artist_ids[i]) writeArtistsTable(artist_info_list) album_info_list=[] for i in range(len(artist_album_list)): for j in range(len(artist_album_list[i])): album_info_list.append(fetchAlbumInfo(artist_album_list[i][j]))
import sys from fetchArtist import fetchArtistId, fetchArtistInfo from artistNetworks import writeEdgeList from analyzeNetworks import readEdgeList, combineEdgeLists, pandasToNetworkX, randomCentralNode from fetchAlbums import fetchAlbumIds, fetchAlbumInfo import numpy as np import requests from io import open artist_names = sys.argv[1:] print "input artists are ", artist_names artistID_list = [fetchArtistId(artist_name) for artist_name in artist_names] for artistID in artistID_list: writeEdgeList(artistID, 2, artistID + '.csv') combinedEdgeList = readEdgeList(artistID_list[0] + '.csv') for artistID in artistID_list[1:]: edgeList = readEdgeList(artistID + '.csv') combinedEdgeList = combineEdgeLists(combinedEdgeList, edgeList) g = pandasToNetworkX(combinedEdgeList) sample = [] for i in range(30): sample.append(randomCentralNode(g)) outfile = open('playlist.csv', 'w', encoding = 'utf-8') outfile.write(u'artist_name,album_name,track_name\n')
import sys from fetchArtist import fetchArtistId, fetchArtistInfo from fetchAlbums import fetchAlbumIds, fetchAlbumInfo from csvUtils import writeArtistsTable, writeAlbumsTable from barChart import plotBarChart if __name__ == '__main__': artist_names = sys.argv[1:] print "input artists are ", artist_names # YOUR CODE HERE ids = [] artist_info = [] album_info = [] for i in artist_names: id = fetchArtistId(i) ids.append(id) #list of artist ids print ids for id in ids: artist_info.append(fetchArtistInfo(id)) #creating list of dictionaries of artists' info album_ids = fetchAlbumIds(id) #list of album ids for each artist print album_ids for album_id in album_ids: album_info.append(fetchAlbumInfo(album_id)) #list of dictionaries of album info print album_info #create artist csv and album csv writeArtistsTable(artist_info) writeAlbumsTable(album_info) plotBarChart()
import sys from fetchArtist import fetchArtistId, fetchArtistInfo from fetchAlbums import fetchAlbumIds, fetchAlbumInfo from csvUtils import writeArtistsTable, writeAlbumsTable from barChart import plotBarChart if __name__ == '__main__': artist_names = sys.argv[1:] print "input artists are ", artist_names # YOUR CODE HERE artistinfo_list = [] albuminfo_list = [] for artist in artist_names: artist_id = fetchArtistId(artist) artist_info = fetchArtistInfo(artist_id) artistinfo_list.append(artist_info) album_id = fetchAlbumIds(artist_id) for albumid in album_id: album_info = fetchAlbuminfo(albumid) albuminfo_list.append(album_info) writeArtistsTable(artistinfo_list) writeAlbumsTable(albuminfo_list) plotBarChart()
import fetchArtist as fAr import fetchAlbums as fAl import albumtest import csv import sys import networkx as nx import analyzeNetworks as anN import artistNetworks as arN import numpy as np import requests import pandas as pd artistids = [] for x in sys.argv[1:]: artistids.append(fAr.fetchArtistId(x)) count = 1 listoffilenm = [] for artist in artistids: filenm = "edgelist" + str(count) + ".csv" arN.writeEdgeList(artist, 2, filenm) listoffilenm.append(filenm) count += 1 numberoffiles = len(listoffilenm) subsequentindex = 2 counter2 = 2 if len(listoffilenm) != 1: file1 = anN.readEdgeList(listoffilenm[0])
import sys from fetchArtist import fetchArtistId, fetchArtistInfo from fetchAlbums import fetchAlbumIds, fetchAlbumInfo from csvUtils import writeArtistsTable, writeAlbumsTable from barChart import plotBarChart if __name__ == '__main__': artist_names = sys.argv[1:] print "input artists are ", artist_names artist_info_list = [] album_info_list = [] for artist_name in artist_names: artist_id = fetchArtistId(artist_name) artist_info = fetchArtistInfo(artist_id) artist_info_list.append(artist_info) albums_id = fetchAlbumIds(artist_id) for album_id in albums_id: album_info = fetchAlbumInfo(album_id) album_info_list.append(album_info) writeArtistsTable(artist_info_list) writeAlbumsTable(album_info_list) plotBarChart()
def createNewPlaylist(artist_name): cur = db.cursor() cur.execute('''CREATE TABLE IF NOT EXISTS songs( playlistId INTEGER, songOrder VARCHAR(255), artistName VARCHAR(255), albumName VARCHAR(255), trackName VARCHAR(255));''') cur.execute('''CREATE TABLE IF NOT EXISTS playlists( id INTEGER PRIMARY KEY AUTO_INCREMENT, rootArtist VARCHAR(255));''') a = artist_name ID = fetchArtistId(a) combined_Edge_List = getEdgeList(ID, 2) b = combined_Edge_List c = pandasToNetworkX(b) cur.execute(''' INSERT INTO playlists (rootArtist) VALUES (%s)''', (artist_name)) g = cur.lastrowid nodes = [] albums = [] tracks = [] tracks_names = [] while len(albums) < 30: e = randomCentralNode(c) f = fetchAlbumIds(e) if len(f) == 0: continue i = len(f) - 1 g = randint(0, i) h = f[g] albums.append(h) for i in range(30): album_id = albums[i] url = "https://api.spotify.com/v1/albums/" + album_id + "/tracks" req = requests.get(url) json_data = req.json() j = len(json_data['items']) - 1 k = json_data['items'][j]['id'] tracks.append(k) for i in range(30): track_id = tracks[i] url = "https://api.spotify.com/v1/tracks/" + track_id req = requests.get(url) json_data = req.json() names = json_data['name'] tracks_names.append(names) for i in range(30): x = fetchAlbumInfo(albums[i]) ALBUM_NAME = x['name'] print(x['artist_id']) y = fetchArtistInfo(x['artist_id']) ARTIST_NAME = y['name'] TRACK_NAME = tracks_names[i] x = i + 1 cur.execute( ''' INSERT INTO songs (playlistId, songOrder, artistName, albumName, trackName) VALUES (%s, %s, %s, %s, %s )''', (g, x, ARTIST_NAME, ALBUM_NAME, TRACK_NAME)) db.commit()
import sys from fetchArtist import fetchArtistId, fetchArtistInfo from fetchAlbums import fetchAlbumIds, fetchAlbumInfo from csvUtils import writeArtistsTable, writeAlbumsTable from barChart import plotBarChart if __name__ == '__main__': artist_names = sys.argv[1:] print "input artists are ", artist_names artists = [] albums = [] for an in artist_names: a_id = fetchArtistId(an) artists.append(fetchArtistInfo(a_id)) albs = fetchAlbumIds(a_id) for alb in albs: albums.append(fetchAlbumInfo(alb)) writeArtistsTable(artists) writeAlbumsTable(albums) plotBarChart()
import sys from fetchArtist import fetchArtistId, fetchArtistInfo from fetchAlbums import fetchAlbumIds, fetchAlbumInfo from csvUtils import writeArtistsTable, writeAlbumsTable from barChart import plotBarChart if __name__ == '__main__': artist_names = sys.argv[1:] print "input artists are ", artist_names # YOUR CODE HERE artist_list = [] album_list = [] for x in artist_names: artist_id = fetchArtistId(x) artist_info = fetchArtistInfo(artist_id) artist_list.append(artist_info) album_id = fetchAlbumIds(artist_id) albums_info = [fetchAlbumInfo(y) for y in album_id] album_list +=albums_info writeArtistsTable(artist_list) writeAlbumsTable(album_list) plotBarChart()
import sys from fetchArtist import fetchArtistId, fetchArtistInfo from fetchAlbums import fetchAlbumIds, fetchAlbumInfo from csvUtils import writeArtistsTable, writeAlbumsTable from barChart import plotBarChart if __name__ == '__main__': artist_names = sys.argv[1:] artists_ids = [] artist_info = [] print "input artists are ", artist_names for n in artist_names: id = fetchArtistId(n) artists_ids.append(id) artist_info.append(fetchArtistInfo(id)) album_info = [] for ids in artists_ids: album_id = fetchAlbumIds(ids) for alb in album_id: album_info.append(fetchAlbumInfo(alb)) writeArtistsTable(artist_info) writeAlbumsTable(album_info) plotBarChart()
import sys from fetchArtist import fetchArtistId, fetchArtistInfo from fetchAlbums import fetchAlbumIds, fetchAlbumInfo from csvUtils import writeArtistsTable, writeAlbumsTable from barChart import plotBarChart if __name__ == '__main__': artist_names = sys.argv[1:] print "input artists are ", artist_names # YOUR CODE HERE artist_ids = [] # Creates a list of artist IDs for artist in artist_names: artist_ids.append(fetchArtistId(artist)) artist_info = [] # Creates a list of artist info dictionaries for ids in artist_ids: artist_info.append(fetchArtistInfo(ids)) artist_album_ids = [] # Creates a list of lists of album ids for ids in artist_ids: artist_album_ids.append(fetchAlbumIds(ids)) albums_info = [] # Creates a list of dictionaries of album information for artist_albums in artist_album_ids: for ids in artist_albums: albums_info.append(fetchAlbumInfo(ids))
import sys from fetchArtist import fetchArtistId, fetchArtistInfo from fetchAlbums import fetchAlbumIds, fetchAlbumInfo from csvUtils import writeArtistsTable, writeAlbumsTable from barChart import plotBarChart if __name__ == '__main__': artist_names = sys.argv[1:] print "input artists are ", artist_names # YOUR CODE HERE artistinfolist = [fetchArtistInfo(fetchArtistId(i)) for i in artist_names] albuminfolist = [] for i in artistinfolist: #print i['id'] for albumid in fetchAlbumIds(i['id']): albuminfolist.append(fetchAlbumInfo(albumid)) writeArtistsTable(artistinfolist) writeAlbumsTable(albuminfolist) plotBarChart()
"""else: print "Result OK""" if result_list[0] == None: Continue info = result_list[0].json() data = {} data['name'] = info['name'] return (data) if __name__ == '__main__': artist_names = sys.argv[1:] print "input artists are ", artist_names #generate the network old_edgelist = None artistidlist = [fetchArtistId(i) for i in artist_names] for i in artistidlist: edgelist = getEdgeList(i, 2) new_edgelist = combineEdgeLists(edgelist, old_edgelist) old_edgelist = new_edgelist #pick tracks k = 0 artist_list = [] while k != 30: artist_dict = {} artist_dict['artist_name'] = fetchArtistInfo( randomCentralNode(pandasToNetworkX(old_edgelist)))['name'] #print artist_dict['artist_name'] album_id = np.random.choice(