/ / Zapisz wszystkie tagi w wykonawcach [i] ['tags'] - python, json

Przechowuj wszystkie tagi w wykonawcach [i] ['tags'] - python, json

Mam poniższy kod, aby pobrać tagi artystów (gatunki) z ostatniego apm fm. Każdy artysta może mieć wiele tagów takich jak:

 {"artist": {"tags": {"tag": [{"name": "alternative",
"url": "https://www.last.fm/tag/alternative"}, {"name": "indie",
"url": "https://www.last.fm/tag/indie"}, {"name": "electronic",
"url": "https://www.last.fm/tag/electronic"}]},

Chcę przechowywać wszystkie tagi artysty w artists[i]["tags"]. Problem polega na tym, że właśnie otrzymuję ostatni tag z tym kodem:

for artist in artist_data["artist"]["tags"]["tag"]:
tags = artist["name"]
artists[i]["tags"] = tags
print(artists[i])

bardziej powiązany kod:

artists = {}

for i,v in artists.items():
chosen = artists[i]["name"].replace(" ", "+")
artist_response = requests.get("http://ws.audioscrobbler.com/2.0/?method=artist.getinfo&format=json&artist="+chosen+"&api_key="+api_key)
artist_data = artist_response.json()

for artist in artist_data["artist"]["tags"]["tag"]:
tags = artist["name"]
artists[i]["tags"] = tags
print(artists[i])

Czy wiesz, jak przechowywać wszystkie tagi w artists[i]["tags"]?

Odpowiedzi:

1 dla odpowiedzi № 1

Wymieniasz artists[i]["tags"] z nowym tags w każdej pętli.
Możesz dołączyć do niego w ten sposób:

artists[i]["tags"].append(tags)

Musisz stworzyć artists[i]["tags"] = [] przed pętlą.