
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!






Está ficando legal! Gostei da forma como você está fazendo os testes com fakeweb
Parabéns Jésus!
Parabéns pelo post Jésus, excelente material, deveria escrever pelo menos uma vez por semana, material eu sei que tem!
Abraço.
Fala Cássio!
Realmente, fakeweb é uma mão na roda pra criar testes pra esse tipo de cenário…ajuda muito!
Valeu pelo comentário.
Abraço.
Valeu Éder!
A tempos venho querendo manter um post por semana, mas vc sabe como é hehe…
Tentarei novamente!
Abraço!