Você já conhece o Yahoo Query Language?
Desenvolvimento Web, Dicas, Internet, JQuery November 23rd, 2009
O YQL é uma API da Yahoo, que quer dizer Yahoo Query Language.
Essa poderosa API tem o objetivo de facilitar a vida dos desenvolvedores, a grande vantagem é poder encontrar muitas APIs em forma de open data table num lugar só (convergência), de um jeito simples de usar.
A linguagem é basicamente SQL Language, sim, você poderá selecionar os dados a partir de uma simples select, ou combinando com subselects, cross e etc! Incrível!
Você pode por exemplo selecionar os títulos de notícias do site da CNN e trazêlos já traduzidos para o português, numa única select. Pra isso você terá de combinar 2 Selects, uma com a API da CNN e outra com a API do google translator. Você também pode ainda, filtrar as notícias por categoria ou alguma palavra chave.
O YQL aceita Selects, Inserts, Deletes e Updates.
Tudo começa pelo console YQL, lá você poderá executar e testar todos os seus SQLs. Você escolhe o seu tipo de retorno, pode ser um XML ou JSON.
Exemplos:
Para inserir um novo tweet pelo YQL basta fazer:
insert into twitter.status (status,username,password) values (”Playing with INSERT, UPDATE and DELETE in YQL”, “twitterusername”,”twitterpassword”)
Para buscar a timeline de um usuário no twitter faça:
select * from twitter.user.timeline where id=’riquecosta’
No próprio console do YQL é possível capturar a URL REsT da query.
O exemplo abaixo mostra como deve ser feito para buscar e exibir no html a timeline de um usuário no twitter, clique aqui pra ver o exemplo online ou clique aqui pra fazer o download.
As open data tables fazem parte de um projeto (http://www.datatables.org/), o YQL já possui diversas open data tables próprias e ainda outras data tables feitas pela própria comunidade YQL.
Mas, você pode precisar de uma data table que ainda não existe, então, você poderá fazer a sua
Não sei se a americanas.com disponibiliza uma API para realizar busca em seu site, mas, vamos fazer a nossa própria para poder fazer buscas lá
Sabemos que site da americanas.com a busca é feita através da da URL http://www.americanas.com.br/busca/palavra_chave
Então, fazemos com que o YQL busque o documento HTML:
select * from html where url=”http://www.americanas.com.br/busca/corinthians”
Agora, você precisará identificar onde esses resultados aparecem nos elementos HTML, como na imagem abaixo:

Copie o Xpath através do firebug, em seguida coloque no console e faça o teste!
Você terá uma query parecida com essa:
select * from html where url=”http://www.americanas.com.br/busca/corinthians” and xpath=’//*[@class="searchResultList"]‘

Aí é só correr pro abraço, você terá o resultado da pesquisa serializado em XML ou JSON, veja a demonstração on-line aqui ou faça o download do arquivo aqui.

November 26th, 2009 at 14:23
Du caralho heim…