Você está na página 1de 3

07/06/12

ASSINE 0800 703 3000 BATE-PAPO

A API do Yahoo! meme - Java Free.org


E-MAIL SAC BUSCAR VOIP E-MAIL GRTIS SHOPPING NDICE PRINCIPAL

Login
>

Registre-se

HOME

NOTCIAS

ARTIGOS

FRUM

BUSCA

ENVIAR NOTCIA

CONTRIBUIR

Curtir

55

35

Voc pode ganhar um iPad 2 na promoo do Javafree


O Portal javafree.org inicia mais uma promoo para os usurios do frum. Quem publicar mais posts vlidos (perguntas ou respostas) entre 16/4 a 13/7 levar para casa um iPad 2 de 16GB! Clique aqui e saiba mais.

Home > Artigos > Frameworks, APIs, Instalao e Configurao >

A API do Yahoo! meme


Publicado por paulofernandesjr em 19/10/2009 - 5.879 visualizaes

comentrios: 0 Em outubro de 2009 o Yahoo! liberou a verso beta do meme (http://meme.yahoo.com/) Para quem no sabe o meme um servio de microblog semelhante ao Twitter (http://twitter.com/), porm no meme podemos postar vdeos, fotos, links, textos, arquivos de msica e no temos um limite de 140 caracteres nas mensagens. At a data da escrita desse artigo, o servio no era popular e no tinham ferramentas para acesso ao servio, tudo tinha que ser pelo prprio site do meme. Como o objetivo do artigo ser tcnico no entraremos em detalhes do servio e sim falaremos da API.

Introduo
Para usar esta API, voc precisa conhecer primeiramente um pouco sobre como o Yahoo! trabalha com suas APIs. O Yahoo! usa a linguagem YQL ( Yahoo Query Language), nada muito bvio no? O YQL uma linguagem baseada na mesma estrutura do SQL (Structure Query Language), para essa API do meme passamos os comandos via uma requisio HTTP, REST. O Yahoo! fornece suporte a alguns linguagens, entre elas Flash, Java, JavaScript, .NET, PHP, Python, Ruby e Silverlight, neste artigo no usaremos nenhuma linguagem, apenas mostraremos como chamar as querys e gerar as chamadas REST. Abaixo temos um exemplo de como escrever uma query usando o YQL, est query apenas um exemplo e no faz parte da API do meme. O resultado dela um XML com todas as ?tabelas? que podemos usar, podemos tambm fazer o retorno ser via JSON ao invs de XML. No artigo ser trabalhado com XML. Comando: show tables Requisio REST gerada: https://query.yahooapis.com/v1/public/yql?q=show%20tables&format=xml Para testar mais comandos do YQL, sugiro que acesse o console de demonstrao do Yahoo! https://developer.yahoo.com/yql/console/. Apenas para comunicar que para muitas coisas, precisaremos estar autenticados com a nossa conta do Yahoo! Agora que j sabemos um pouco como a API funciona, vamos colocar a mo na massa e trazer alguns resultados mais reais do meme. A conta usada para os exemplos de requisies do meme ser esta: paulofernandesj.

O que posso fazer?


No diferente de algumas APIs do Google, o Yahoo! tambm pede para que voc obtenha uma chave para acesso a API. Para obter essa chave acesse a central dos desenvolvedores http://developer.yahoo.com/, isso caso queira criar um aplicativo. O objetivo deste artigo mostrar as funcionalidades da API do meme atravs do console fornecido pelo prprio Yahoo! Agora listaremos diversas querys que podem ser executadas para retornarem os resultados, acrescentaremos uma breve descrio sobre o resultado obtido. Uma coisa que precisamos deixar bem claro antes de iniciarmos o processo de explicao das querys que nelas sempre constar o valor VNDIRCXTU6SOYRG2CTBU2D7SCY para o campo owner_guid, owner_guid o campo pelo qual conseguimos trazer as informaes de determinada conta do meme, deste que est conta no esteja privada no modo de visualizao. Para trazer os resultados da sua conta, basta usar o primeiro comando abaixo e obter o XML com os valores da sua conta, bastando apenas encontrar o campo owner_guid e comear a utilizar esta conta para as prximas consultas. Outra forma de obter os dados nas querys colocar em owner_guid o valor me, sem aspas, porm este parmetro trar somente as configuraes da sua conta, veja os exemplos abaixo. O padro para os itens abaixo ser: O que o comando faz query YQL Chamada REST Explicao mais detalhada (Caso necessrio) S mais um fato importante que ser muito til para seu aprendizado. O Yahoo! disponibiliza um comando chamado desc , que nada mais do que a descrio da tabela que queremos usar. Observe o comando abaixo e teste-o na sua pgina do console para ver exatamente o seu retorno. Para a informao abaixo eu executei o comando desc meme.info.

<xlvrin"."ecdn=UF8? ?m eso=10 noig"T-"> <ur xlsyho"tp/wwyhopscmv/aerg qey mn:ao=ht:/w.aoai.o/1bs.n" yhocut"" yhocetd"091-30:64Z yholn=eao:on=1 ao:rae=20-01T83:0" ao:ag"n U"yhoudtd"091-30:64Z yhoui"tp:/ur.aoai.o/1ylqds+eeif" S ao:pae=20-01T83:0" ao:r=hts/qeyyhopscmv/q?=ecmm.no>

javafree.uol.com.br/artigo/875525/A-API-do-Yahoo-meme.html

1/3

07/06/12
<igotc> dansis

A API do Yahoo! meme - Java Free.org


<ulcyalbetu<pbilClal> pbilClal>re/ulcyalbe <srtm><ue-ie ue-ie1/srtm> <evc-ie0/evc-ie srietm><srietm> <ul-eso>41/ul-eso> bidvrin33<bidvrin <dansis /igotc> <eut> rsls <al scrt=AY> tbe euiy"N" <ea mt> <uhrYho Ic<ato> ato>ao! n./uhr <ouettoUL> dcmnainR/ <apeur>EET*FO mm.noWEEonrgi=e/apeur> smlQeySLC RM eeif HR we_udm<smlQey <mt> /ea <eus> rqet <eet slc> <e nm=onrgi"> ky ae"we_ud/ <e nm=nm"> ky ae"ae/ <slc> /eet <rqet /eus> <tbe /al> <rsls /eut> <qey /ur>

O interessante nesse comando que ele mostra muita coisa da estrutura da tabela, como por exemplo, o nvel de segurana da tabela, exemplos de como podem ser feita as consultas com essa tabela, quais parmetros podem ser passados no where.

Exemplos
Retornando as informaes da sua conta atravs do owner_guid=me. SELECT * FROM meme.info WHERE owner_guid=me https://query.yahooapis.com/v1/public/yql?q=SELECT%20*%20FROM%20meme.info%20WHERE%20owner_guid%3Dme&format=xml" Se reparar no retorno, poder pegar a sua chave do Yahoo! Acesse a estrutura da rvore do XML da seguinte forma result>meme>guid, dentro desse campo estar a chave para comear a consultar, repare que para consultar usando me, no precisamos de aspas simples, porm para a prximas consultas, usaremos o guid e colocaremos as consultas usando aspas simples. _________________________________________________________________ Retornando os followers de uma conta pblica, atravs do owner_guid da conta SELECT * FROM meme.followers WHERE owner_guid='VNDIRCXTU6SOYRG2CTBU2D7SCY' https://query.yahooapis.com/v1/public/yql? q=SELECT%20*%20FROM%20meme.followers%20WHERE%20owner_guid%3D%27VNDIRCXTU6SOYRG2CTBU2D7SCY%27&format=xml O retorno dessa chamada REST retornar os dados dos meus followers, com essa informao eu consigo capturar outros dados desses follower, como por exemplo seus posts. Apenas para lembrar que o Yahoo! limita essa chamada a 10 followers para no retornar um XML muito extenso, dando trabalho para processar a requisio. _________________________________________________________________ Retornando os following de uma conta pblica, atravs do owner_guid da conta SELECT * FROM meme.following WHERE owner_guid='VNDIRCXTU6SOYRG2CTBU2D7SCY' https://query.yahooapis.com/v1/public/yql? q=SELECT%20*%20FROM%20meme.following%20WHERE%20owner_guid%3D%27VNDIRCXTU6SOYRG2CTBU2D7SCY%27&format=xml O retorno dessa chamada bem parecido com o retorno dos followers a nica diferena que ele retorna os followings. _________________________________________________________________ Retornando os post de uma conta pblica, atravs do owner_guid da conta SELECT * FROM meme.posts WHERE owner_guid='VNDIRCXTU6SOYRG2CTBU2D7SCY'; https://query.yahooapis.com/v1/public/yql? q=SELECT%20*%20FROM%20meme.posts%20WHERE%20owner_guid%3D%27VNDIRCXTU6SOYRG2CTBU2D7SCY%27%3B&format=xml Esta chamada retorna os posts do usurio que foi passado como parmetro, nesse retorno ele traz os comentrios, data que foi postado, contedo e mais algumas informaes.

javafree.uol.com.br/artigo/875525/A-API-do-Yahoo-meme.html

2/3

07/06/12

A API do Yahoo! meme - Java Free.org


_________________________________________________________________ Inserindo um novo post em uma conta autenticada INSERT INTO meme.user.posts (type, content) VALUES ("text", "testando a API do meme")

https://query.yahooapis.com/v1/yql? q=INSERT%20INTO%20meme.user.posts%20%28type%2C%20content%29%20VALUES%20%28%22text%22%2C%20%22testando%20a%20API%20do%20mem Este uma das chamadas mais interessantes, pois ela acessa a sua conta e publica um post. Aps a chamada, no prprio retorno ele traz os dados o status da postagem e os dados das informaes do post, seria como se postasse e j listasse aquele post. _________________________________________________________________ Excluindo um post de uma conta autenticada DELETE FROM meme.user.posts WHERE pubid = "1aR2FNB" https://query.yahooapis.com/v1/yql? q=DELETE%20FROM%20meme.user.posts%20WHERE%20pubid%20%3D%20%221aR2FNB%22&format=xml Com esta chamada voc consegue apagar um post, para isso precisa estar autenticado na conta e saber o pubid (string nica do post). Para saber o pubid, basta usar o comando que lista os posts. Semelhante ao mtodo para postagem ele retorna o status da excluso, caso tente excluir um post, a chamada REST retorna um erro (undefined). _________________________________________________________________ Existem outras chamadas que podem ser feitas, como por exemplo, seguir algum usurio, deixar de seguir algum, e algumas mais. Sempre que estiver em dvida utiliza o comando desc . Ele de grande utilidade no trabalho com a API do Yahoo!

Concluso
Alguns dos comandos apresentados sozinhos no fazem muito sentido, mas a combinao deles pode gerar um resultado bem legal, como por exemplo, criar uma paginao dos followers, combinando a consulta das informaes do usurio (tabela meme.info ) com a listagem dos followers. O objetivo deste artigo foi divulgar o YQL e mostrar os comandos da API do meme. Este artigo bem bsico, e mostra somente como realizar as chamadas aos mtodos, no especificamos nenhuma linguagem, pois as chamadas so iguais para todas que faam chamadas via REST. Escolha a linguagem que tem mais facilidade e teste essas chamadas, veja o poder que as chamadas REST e o YQL proporcionam. comentrios: 0

Tpicos Relacionados
Problemas com array e JTextField Cep, aviso de erro! Pintar Pixel a Pixel Ordenar uma lista de nomes por ordem alfabtica Comentrios sobre a guerra em SP jButton - Problemas com o cone Cliente SMTP com interface Swing, bem legalzinho! Como retornar uma consulta no JtextField? Reiniciar mquina remotamente Mudar cores dos botes SMTP O que usar nesse Projeto? [duvida] classe de conexo teclas de atalho em uma pagina. [RESOLVIDO]Transferncia de arquivos Dificuldades em resolver exerccios de java. colar em PA

Home

Sobre

Anuncie

RSS Notcias RSS Frum

O JavaFree.org uma comunidade java formada pela coolaborao dos desenvolvedores da tecnologia java. A publicao de artigos alm de ajudar a comunidade java, ajuda a dar maior visibilidade para o autor. Contribua conosco.

javafree.uol.com.br/artigo/875525/A-API-do-Yahoo-meme.html

3/3

Você também pode gostar