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 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()
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 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()
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 # Where the main.py script says # YOUR CODE HERE, you should write code using the imported functions which: # Loops through the list of artist names, gets their IDs and corresponding info (using fetchArtistId() and fetchArtistInfo()). # Loops through the artist IDs and gets their album IDs and album info (using fetchAlbumIds() and fetchAlbumInfo()). # Writes out CSV files given these lists of artist info dictionaries and album info dictionaries (using writeArtistsTable() and writeAlbumsTable(). # Calls plotBarChart() to read and plot your CSV files. if __name__ == '__main__': artist_names = sys.argv[1:] print "input artists are ", artist_names # YOUR CODE HERE all_artists = [] all_albums = [] for artist in artist_names: artist_id = fetchArtistId(artist) artist_info = fetchArtistInfo(artist_id) all_artists.append(artist_info) album_ids = fetchAlbumIds(artist_id) albums_info = [fetchAlbumInfo(x) for x in album_ids] all_albums += albums_info writeArtistsTable(all_artists) writeAlbumsTable(all_albums) plotBarChart()
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)) # Creates a table from list of dictionaries of artist info writeArtistsTable(artist_info) # Creates a table from list of dictrionaries of album info writeAlbumsTable(albums_info) plotBarChart()
artist_names = sys.argv[1:] print "input artists are ", artist_names artist_ids_list = [] for artist in artist_names: artist_id = fetchArtistId(artist) artist_ids_list.append(artist_id) artist_dicts_list = [] for artist_id in artist_ids_list: artist_info = fetchArtistInfo(artist_id) artist_dicts_list.append(artist_info) writeArtistsTable(artist_dicts_list) album_ids_list = [] for artist in artist_ids_list: album_ids_list += fetchAlbumIds(artist) album_dicts_list = [] for album in album_ids_list: album_dicts_list.append(fetchAlbumInfo(album)) writeAlbumsTable(album_dicts_list) plotBarChart()
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 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()
from barChart import plotBarChart if __name__ == '__main__': artist_names = sys.argv[1:] print "input artists are ", artist_names list_of_artist_ids = [] for artist in artist_names: artist_id = fetchArtistId(artist) list_of_artist_ids.append(artist_id) list_of_artist_dicts = [] for artist_id in list_of_artist_ids: artist_info = fetchArtistInfo(artist_id) list_of_artist_dicts.append(artist_info) writeArtistsTable(list_of_artist_dicts) list_of_album_ids = [] for artist in list_of_artist_ids: list_of_album_ids += fetchAlbumIds(artist) list_of_album_dicts = [] for album in list_of_album_ids: list_of_album_dicts.append(fetchAlbumInfo(album)) writeAlbumsTable(list_of_album_dicts) plotBarChart()