Je pense qu'il y a beaucoup de gens qui aiment Spotify lorsqu'ils écoutent de la musique. C'est une fonctionnalité très utile, mais malheureusement je ne peux pas voir le nombre de vues.
Au lieu de cela, Spotify propose un service qui vous permet de télécharger des données personnelles telles que l'historique de lecture. Cette fois, j'aimerais utiliser ces données personnelles pour agréger le nombre de vues et l'enregistrer dans Excel. ʻOpenPyXL` est utilisé, donc si vous ne l'avez pas installé, veuillez l'installer à l'avance.
Le code utilisé cette fois est créé en se référant à l'article suivant. Veuillez télécharger les données personnelles à l'avance en vous référant aux articles suivants.
Article de référence: Organiser les chansons jouées dans Spotify par ordre de nombre de vues
count.py
import json
import collections
import openpyxl
#Lire les données JSON
with open('StreamingHistory0.json', 'r', encoding='utf-8') as f:
d = json.load(f)
list = []
search_all = str(input('Search for all? (y/n) >> '))
#Retirez le titre de la chanson et ajoutez-le à la liste
#Recherche complète
if search_all == "y":
for i in d:
list.append(i['trackName'])
#Recherche spécifiée
else:
artist = str(input('Enter the artist name. >> '))
for i in d:
if(i['artistName'] == artist):
list.append(i['trackName'])
#Obtenir les éléments par ordre d'apparition
c = collections.Counter(list)
c_list = c.most_common()
#Créer un classeur
book = openpyxl.Workbook()
#Récupérez la feuille et renommez-la
sheet = book.active
sheet.title = 'Play Count'
#Faites correspondre la longueur de la colonne au titre de la chanson
max_length = 0
for index, row in enumerate(c_list):
if index <= 10: #Classement à agréger
sheet.append(row)
if len(row[0]) > max_length:
max_length = len(row[0])
sheet.column_dimensions['A'].width = max_length
#Enregistrer le classeur
book.save('SpotifyCount.xlsx')
En plus de la sortie vers Excel, j'ai essayé de spécifier le codage et de le formater. Dans le code ci-dessus, le classement de l'agrégation est jusqu'à 10e, mais veuillez changer ici si nécessaire.
Dans le cas d'une recherche complète, le classement général est enregistré, et dans le cas d'une recherche spécifiée, le classement de l'artiste spécifié est enregistré sur la feuille Excel.
Recommended Posts