Page 1 sur 1

Récupérer 1ère image d'un recherche Google lancé via PHP

Posté : 01 févr. 2009, 22:40
par chrislabricole
Bonsoir tout le monde :)

Je suis en train de développer une application, et dans celle-ci je récupère le nom d'un album (musical)...
Et je voudrais récupérer la jaquette de cet album, j'ai pensé à Google image, parce-que quand on tape le nom de l'album, il nous sort gentillement en premier la bonne jaquette :) (à 99% des cas :P)

Mais... en voyant le code généré par Google image lors de la recherche, il faut avouer que ça fait un peu peur :/ (on dirait que c'est tout en JS...)

Donc je voudrais savoir si il n'existerait pas une version de Google image en léger.
Donc façon à se que je puisse récupéré avec PHP l'URL de la première image :)

Voilà, merci de votre aide :)

Posté : 01 févr. 2009, 22:57
par Sékiltoyai
Sinon ya CDDB…

Posté : 01 févr. 2009, 23:39
par @rthur
Sinon ya CDDB…
ou les API Amazon...

et l'un comme l'autre seront bien + fiable que le 1er résultat de Google Images

Posté : 02 févr. 2009, 12:17
par mere-teresa

Posté : 02 févr. 2009, 21:42
par chrislabricole
Merci beaucoup de vos réponses !

Effectivement, le premier résultat de Google Image est moins fiable que se que je disais dans mon premier message... Mais en attendant vos messages, je l'ai quand même réalisé : J'ai utilisé Google Mobile :)

J'ai essayer Amazon Web Service, C'est vrai que ça a l'air vraiment pas mal, mais il faut un gros temps d'adaptation au système :/
Puis je crois que c'est payant, pas sûr (je n'ai pas beaucoup cherché sur ce point là...)

Jusqu'au moment où je vois que le site LastFm propose un API :)
Et là, ça marche du tonner ! :D

Voici le code pour les intéressés :)
<?php

$a = stripslashes($_GET['a']);
$t = stripslashes($_GET['t']);
$api_key = 'API_KEY_LAST_FM_ICI';

$getAlbumName = 'http://ws.audioscrobbler.com/2.0/?method=track.getinfo&api_key='.$api_key.'&artist='.$a.'&track='.$t;


$dom = new DOMDocument();
$dom->load($getAlbumName);
$tracks = $dom->getElementsByTagName('track');	


foreach($tracks as $track){
	$imgurl = $track->getElementsByTagName('image')->item(1)->nodeValue;
}

if( !empty($imgurl) ){
	echo $imgurl;
} else {
	echo 'Pas d\'image...';
}

?>
Merci de votre aide ! :D
PS: Si vous avez des suggestions, remarques ou des meilleurs services encore, n'hésitez pas ;)

Posté : 02 févr. 2009, 23:34
par mere-teresa
Modération :
chrislabricole, si ta question est résolue, pense à ajouter le tag [Résolu]
pour indiquer aux personnes qui voudront consulter ce sujet qu'il contient une solution.
Tu peux réaliser cette opération en cliquant sur le bouton Image en haut à gauche de ce sujet.

Posté : 02 févr. 2009, 23:38
par chrislabricole
Oups :oops: