Last active
June 27, 2018 17:06
-
-
Save Franck1333/2a8dfa6d1db9c6e3f38d60657c07d2ef to your computer and use it in GitHub Desktop.
Work with Deezer API / Look for the current Top Chart and allow you to search and get suggestions of the content on Deezer
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env python | |
# -*- coding: UTF8 -*- | |
#Aides : https://developers.deezer.com/api | |
#Aides : http://json.parser.online.fr/ | |
import json #Traitement du fichier JSON reçu | |
import requests #<-- Utilisation d'une Adresse URL Normalisée | |
from PIL import Image #Fonctionnalité lié à la Recuperation et Affichage des Illustrations | |
import urllib, cStringIO #Fonctionnalité lié à la Recuperation et Affichage des Illustrations | |
def recherche(): | |
#Procéder à une recherche de contenue sur Deezer. | |
print("Bienvenue dans le Programme de Recherche de contenue disponible sur Deezer.") #Affichage de Bienvenue | |
recherche = raw_input("Que souhaitez-vous cherchez ?") #Permet le Saisie du contenue rechercher en utilisant le clavier | |
send_url = 'https://api.deezer.com/search?q='+recherche #Envoie de la Demande cliente a l'API Deezer | |
r = requests.get(send_url) #<-- Ouverture de L'URL pour l'utilisation de L'API | |
jdict = json.loads(r.text) #Chargement des données reçu dans le fichier en format JSON | |
#print(jdict) | |
INDICE = 0 #Indice permettant le Traitement des données provenant du fichier JSON | |
Taille_reponse = len(jdict['data']) #Permet de determiné la taille exacte de la Réponse reçu; Donc permet de determiné le nombre réponse obtenue | |
for INDICE in range(len(jdict['data'])): #Traitement à partir de 0 jusqu'a la taille de la Réponse reçu | |
print("\n") #Saut de ligne | |
print("Information Provenant de: https://www.deezer.com/") #Message Console | |
print("Voici le(s) Résultats obtenue(s) pour votre recherche: ") #Message Console | |
print("Nom de l'Artiste/Groupe:",jdict['data'][INDICE]['artist']['name'] ) #Affichage du Nom de L'Artiste/Groupe dans la console | |
print("Titre du Morceau:",jdict['data'][INDICE]['title'] ) #Affichage du Titre du Morceau | |
print("Titre de l'Album:", jdict['data'][INDICE]['album']['title']) #Affichage du Nom de L'Album | |
print("Resultat Numero:",INDICE +1, "sur" ,Taille_reponse) #Indication où sommes nous dans la recherche tant sur tant. | |
#print("\n") | |
#print("Lien Illustration Artiste:", jdict['data'][INDICE]['artist']['picture_small']) | |
#file = cStringIO.StringIO(urllib.urlopen(jdict['data'][INDICE]['artist']['picture_small']).read()) | |
#img = Image.open(file) | |
#print("Lien Illustration Album:", jdict['data'][INDICE]['album']['cover_small']) | |
#file = cStringIO.StringIO(urllib.urlopen(jdict['data'][INDICE]['album']['cover_small']).read()) | |
#img = Image.open(file) | |
#print("\n") | |
print("Lien Deezer:", jdict['data'][INDICE]['artist']['link']) #Affichage du Lien Deezer de l'Artiste/Groupe correspondant | |
print("\n") #Saut de ligne | |
if len(jdict['data']) == 0: #Si la recherche ne retourne aucune information, alors... | |
print("\n") | |
print("Ouille!!!! Aucun Resultat n'a ete trouver pour votre recherche!!!") #Alors , dans ce cas on affiche un message d'erreur | |
print("On recommence ???") #Message Console | |
print("\n") #Saut de ligne | |
if __name__ == "__main__": | |
recherche() #Fonctionnalité permettant de rechercher du contenue sur Deezer. | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env python | |
# -*- coding: UTF8 -*- | |
#Aides : https://developers.deezer.com/api | |
import json #Traitement du fichier JSON reçu | |
import requests #<-- Utilisation d'une Adresse URL Normalisée | |
def top_chart(): | |
send_url = 'https://api.deezer.com/chart' | |
r = requests.get(send_url) #<-- Ouverture de L'URL pour l'utilisation de L'API | |
jdict = json.loads(r.text) #Chargement des données reçu dans le fichier en format JSON | |
#print(j) | |
#print("Titre du Morceau:", jdict['tracks']['data'][0]['title']) | |
#print("Album du Morceau:", jdict['tracks']['data'][0]['album']['title']) | |
#print("Nom de l'Artiste:", jdict['tracks']['data'][0]['artist']['name']) | |
#print("Placement TOP10:", jdict['tracks']['data'][0]['position']) | |
#print("Lien Deezer:", jdict['tracks']['data'][0]['artist']['link']) | |
INDICE = 0 #Indice permettant le Traitement des données provenant du fichier JSON | |
for INDICE in range(len(jdict['tracks']['data'])): #Traitement à partir de 0 jusqu'a la taille de la Réponse reçu | |
print("\n") #Saut de ligne | |
print("Information Provenant de: https://www.deezer.com/") #Message Console | |
print("Placement TOP10:", jdict['tracks']['data'][INDICE]['position']) #Message permettant de connaitre le placement d'un Artiste/Groupe dans le TOP10 | |
print("Titre du Morceau:", jdict['tracks']['data'][INDICE]['title']) #Permet de connaitre le Titre du Morceau | |
print("Album du Morceau:", jdict['tracks']['data'][INDICE]['album']['title']) #Permet de connaitre le Nom de l'Album | |
print("Nom de l'Artiste:", jdict['tracks']['data'][INDICE]['artist']['name']) #Permet de connaitre le Nom de l'Artiste/Groupe | |
print("Lien Deezer:", jdict['tracks']['data'][INDICE]['artist']['link']) #Affichage du Lien Deezer de l'Artiste/Groupe | |
print("\n") #Saut à la ligne | |
if __name__ == "__main__": | |
top_chart() #Fonctionnalité permettant de connaitre le TOP10 actuel. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env python | |
# -*- coding: UTF8 -*- | |
#Aides : https://developers.deezer.com/api | |
import json #Traitement du fichier JSON reçu | |
import requests #<-- Utilisation d'une Adresse URL Normalisée | |
#Blibliothèque RANDOM pour l'utilisation de l'aléatoire | |
import random | |
def top_chart_suggestion(): | |
send_url = 'https://api.deezer.com/chart' | |
r = requests.get(send_url) #<-- Ouverture de L'URL pour l'utilisation de L'API | |
jdict = json.loads(r.text) #Chargement des données reçu dans le fichier en format JSON | |
INDICE = random.randrange(1,10,1) #Le systeme choisi au hasard entre les 10 titres présent dans le top 10 un seul morceau | |
print("Information Provenant de: https://www.deezer.com/") #Message Console | |
print("\n") #Saut de ligne | |
print("Voici ce que nous vous suggérons aujourd'hui:") #Message permettant de connaitre le placement d'un Artiste/Groupe dans le TOP10 | |
print("Titre du Morceau:", jdict['tracks']['data'][INDICE]['title']) #Permet de connaitre le Titre du Morceau | |
print("Album du Morceau:", jdict['tracks']['data'][INDICE]['album']['title']) #Permet de connaitre le Nom de l'Album | |
print("Nom de l'Artiste:", jdict['tracks']['data'][INDICE]['artist']['name']) #Permet de connaitre le Nom de l'Artiste/Groupe | |
print("Lien Deezer:", jdict['tracks']['data'][INDICE]['artist']['link']) #Affichage du Lien Deezer de l'Artiste/Groupe | |
print("\n") | |
if __name__ == "__main__": | |
top_chart_suggestion() #Fonctionnalité permettant de suggérer a l'utilisateur un morceau provenant du TOP10 actuel. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment