
A API do Meme pode user acessada utilizando o YQL (Yahoo Query Language) que
permite usar uma sintaxe similar ao SQL para recuperar os dados do Meme, um exemplo seria:
SELECT * FROM meme.info WHERE name='jtadeulopes';
Clique aqui e veja o resultado dentro do console.
Diante disso, durante o Yahoo! Open Hack Day Brasil 2010 resolvi escrever uma gem para acessar a API do Meme utilizando Ruby.
O desenvolvimento ainda esta no início, mas já é possível realizar as seguintes ações:
- Buscar um usuário
- Followers e Following
- Buscar posts
- Busca os posts mais populares do momento
Instalando
A instalação é bem simples, basta executar o comando
sudo gem install meme
Usando
Localizando um usuário
É possível localizar um usuário e suas informações desta maneira
user = Meme::Info.find('jtadeulopes')
user.name
=> "jtadeulopes"
user.description
=> "software developer"
# outros métodos disponíveis:
user.avatar_url # URL do avatar.
user.title # Breve descrição do meme do usuário.
user.guid # O GUID do usuário.
user.language # Idioma selecionado pelo usuario no Meme.
user.url # URL do Meme do usuário.
user.followers # Seguidores do usuário.
user.following # Quem o usuário segue.
Buscando posts
posts = Meme::Post.find('brhackday')
post = posts.first
post.content
=> "RT @codepo8: And I am off - plane leaves BR for London. Thanks to everybody I met at #brhackday..."
# Cada post possui os métodos:
post.category # Categoria do post.
post.timestamp # Data de publicação.
post.guid # GUID do usuário.
post.pubid # ID de publicação do post.
post.url # URL do post.
post.repost_count # Número de vezes que este post foi anunciado.
post.caption # Legenda do post.
post.type # Tipo de mídia. Valores válidos são "text", "photo", "video" ou "audio".
post.content # Conteúdo publicado.
Você pode especificar o tipo de mídia que deseja localizar, as opções são: photo, video, audio ou text.
Por padrão, o tipo text é assumido caso nenhum seja especificado.
posts = Meme::Post.find('meme rocks', :type => :photo)
Populares
Retorna os 10 posts mais populares. Você pode definir o local que deseja pesquisar. Os valores suportados são “en” para Inglês, “es” para o espanhol, “pt” para Português e “id” para Bahasa Indonésia.
Por padrão, o valor pt é assumido caso nenhum seja especificado
popular = Meme::Post.popular
popular.first.caption
=> "Haha duvido que não vai repostar esse sorriso mais lindo ...."
popular = Meme::Post.popular('id')
popular.first.caption
=> "Kemarin dia menawarkan cinta, hmm sayang harganya terlalu mahal jadi aku putuskan untuk tak memilikinya..."
Quer contribuir?
O projeto é open source e seu código fonte este no Github. Existe um TODO list para um controle do que foi feito e o que ainda precisa ser implementado.
Qualquer dúvida, deixe um comentário!





