In questo post analizzeremo in dettaglio le strutture dati XML relative ad alcune delle più interessanti sorgenti di ricerca viste nei precedenti posts (parte 1 e parte 2). Ci occuperemo dei servizi offerti dall’entry point XML poiché più semplice e di immediato utilizzo tramite un browser e perché gli altri due entry point (JSON e SOAP) sono abbastanza simili
Web
LA sorgente Web consente di eseguire ricerche sulle risorse web presenti in rete.
Eseguiamo la seguente richiesta Get:
http://api.search.live.net/xml.aspx?Appid=<appid>&query=Bing&sources=Web
dove <appid> è il nostro AppID descritto nei precedenti post.
Il risultato che otteniamo è il seguente:
L’elenco dei risultati della ricerca è composto da nodi <web:WebResult> con il seguente formato:
Tra i child del nodo <web:WebResult> troviamo:
<web:Title> : titolo del risultato;
<web:Description> : descrizione del risultato;
<web:Url> : indirizzo completo del risultato;
<web:CacheUrl> : indirizzo della copia del risultato contenuta nella cache di Bing;
<web:DisplayUrl> : indirizzo da visualizzare all’utente;
<web:DateTime> : data di ultimo aggiornamento.
Image
La sorgente Image consente di effettuare ricerche su risorse immagini presenti in rete.
Eseguiamo la seguente richiesta Get:
http://api.search.live.net/xml.aspx?Appid=<appid>&query=Bing&sources=Image
Il risultato che otteniamo è il seguente:
L’elenco dei risultati della ricerca è composto da elementi <mms:ImageResult> con il seguente formato:
Tra i nodi figlio troviamo:
<mms:Title> : Titolo del risultato;
<mms:MediaUrl> : URL a cui si trova l’immagine;
<mms:Url> : URL della pagina che contiene l’immagine;
<mms:DisplayUrl> : URL della pagina contenente l’immagine da visualizzare all’utente;
<mms:Width> : larghezza dell’immagine;
<mms:Height> : altezza dell’immagine;
<mms:FileSize> : dimensione del file di immagine;
<mms:ContentType> : tipo di immagine (ad esempio image/jpeg) ;
<mms:Thumbnail> : dati relativi alla miniatura dell’immagine (si tratta di un elemento con nodi figli).
Video
La sorgente di ricerca Video permette di effettuare ricerche sui file di tipo video presenti in rete.
Eseguiamo la seguente richiesta Get:
http://api.search.live.net/xml.aspx?Appid=<appid>&query=Bing&sources=Video
Il risultato che otteniamo è il seguente:
L’elenco dei risultati della ricerca è composto da elementi <mms:VideoResult> con il seguente formato:
Tra i nodi figli troviamo:
<mms:Title> : titolo del video;
<mms:PlayUrl> : URL del video originale;
<mms:SourceTitle> : nome della sorgente del video;
<mms:RunTime> : se disponibile, indica la durata in millisecondi;
<mms:ClickThroughPageUrl> : URL del filmato attraverso la video page di Bing (una sorta di cache);
<mms:StaticThumbnail> : informazioni circa l’immagine da utilizzare come miniatura.
News
La sorgente di ricerca News consente di effettuare ricerche sulle notizie presenti in rete.
Eseguiamo la seguente richiesta Get:
http://api.search.live.net/xml.aspx?Appid=<appid>&query=Bing&sources=News
Il risultato che otteniamo è il seguente:
L’elenco dei risultati della ricerca è composto da elementi <news:NewsResult> con il seguente formato:
Tra i nodi figli troviamo:
<news:Title> : Titolo della notizia;
<news:Url> : URL della notizia;
<news:Source> : Nome della sorgente della notizia;
<news:Snippet> : Breve descrizione della notizia;
<news:Date> : Data in cui il contenuto è stato indicizzato;
<news:BreakingNews> : Indica se si tratta di un “ultima notizia” o meno.
Translation
La sorgente di ricerca Translation permette di tradurre vocaboli da una lingua ad un’altra.
Eseguiamo la seguente richiesta Get:
http://api.search.live.net/xml.aspx?Appid=<appid>&query=mamma&sources=Translation&Translation.TargetLanguage=en&Translation.SourceLanguage=it
Il risultato che otteniamo è il seguente:
L’elenco dei risultati della ricerca è composto da elementi <tra:TranslationResult> al cui interno troviamo il nodo <tra:TranslatedTerm> che riporta la traduzione del vocabolo presente nel parametro query.
Riferimenti
Per maggiori informazioni potete consultare la documentazione presente ai seguenti link:
Bing API, Version 2
Bing Developer Center
Commenti