Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial
  • Lezione 23 di 32
  • livello principiante
Indice lezioni

Yahoo Video

Effettuare ricerche tra i video di Yahoo
Effettuare ricerche tra i video di Yahoo
Link copiato negli appunti

YahooVideo è un'interfaccia verso Yahoo Video, il motore di ricerca dedicato ai video. Anche per interfacciarci a questo servizio abbiamo bisogno dell'application ID.

Sul developer network di Yahoo troviamo la documentazione delle API ed alcuni esempi dello scambio di messaggi con server.

Facciamo un semplice esempio ed iniziamo installando la libreria yahoo-video con il classico comando rubygems:

% gem install --include-dependencies yahoo-video

Ora scriviamo uno spezzone di codice che ci consenta di utilizzare i risultati per creare una pagina HTML:

require 'rubygems'
require 'yahoo-video'
require 'bluecloth'

APP_ID = "YourYahooApplicationID"

query = ARGV[0]
client = YahooVideo::Client.new APP_ID
request = YahooVideo::SearchRequest.new :query => query
response = client.search request

str = "# Video search for _#{query}_n"
response.results.each do |res|
   str << "[![#{res.title}](#{res.thumbnail.url})](#{res.url})n"
end

bc = BlueCloth::new(str)
puts bc.to_html

Lo schema dell'applicazione è molto semplice. Creiamo un nuovo client YahooVideo utilizzando il nostro Application ID, poi creiamo una nuova istanza di SearchRequest passandogli il termine da cercare e infine eseguiamo la ricerca vera e propria utilizzando il metodo search del client. La ricerca può essere anche resa più precisa utilizzando gli attributi opzionali di SearchRequest.

Il risultato è restituito sotto forma di istanza della classe SearchResponse dalla quale otteniamo la lista di risultati contenuta nell'attributo "results" di tipo SearchResult.

I risultati li formattiamo in modo che BlueCloth sia in grado di creare una pagina HTML utilizzando per ogni video trovato gli attributi title, thunbnail.url e url; l'elenco completo degli attributi è ottenibile attraverso

ri YahooVideo::SearchResult

Ti consigliamo anche