em 10/06/2010 00:00
O Twitter é uma das redes sociais baseada no conceito de "microblogging" que possui o maior crescimento. Ele permite aos usuários postar mensagens com um número reduzido de caractéres. Através da API do Twitter, qualquer um com um pouco de conhecimento de programação pode criar aplicações que se comuniquem com o serviço da rede social.
Se alguma vez você desejou comunicar-se com os servidores do Twitter através de um script PHP, para receber o estado de um usuário, seus seguidores ou postar uma mensagem automaticamente, essa série de artigos irá te ajudar.
Aspectos gerais sobre a API do Twitter
O Twitter coloca à disposição dos usuários 3 APIs distintas. Duas são as chamadas "REST API" e a outra é uma "Streaming API". As aplicações baseadas no Twitter poderão usar as três APIs distintas, combinadas para alcançar os objetivos plajenados.
REST API é uma API web que funciona por HTTP e é acessada a partir de URLs que retornam conteúdos em formatos distintos, como XML, JSON, HTML, etc.
O uso das APIs do Twitter está limitado, pois as aplicações não podem conectar-se um número indeterminado de vezes para fazer qualquer tipo de solicitação. Os limites seriam mais ou menos aceitáveis para páginas pessoais e projetos pequenos (sempre podemos colocar em cache os resultados para não ter que fazer a solicitação várias vezes seguidas). O limite de acesso à api sem registro são de 150 solicitações por hora, enquanto que para solicitações registradas na "whitelist" pode se chegar a fazer 20.000 solicitações por hora.
Veja bem, as solicitações Às vezes são contadas dependendo da API do sistema que conecta com o Twitter e às vezes dependendo da conta do usuário que está solicitando o recurso, pois estes limites podem ser um pouco maiores se temos um ou vários usuários. Há tambpem outros limites de uso da API, baseados nos limites de peginação das buscas que podem ser realizadas, quero dizer, que limitam os resultados das buscads de status de um usuário ou as referências de uma palavra chave nos posts públicos.
Outra coisa importante é que, quando comunicamos com a API do Twitter, temos que trabalhar com a codificação UTF-8 e enviar qualquer parâmetro codificado com formato de URL. Estes formatos e grupos de caractéres podem ser conseguidos utilizando funções do PHP.
API do Twitter e cURL
A API do Twitter funciona por HTTP, enviando a URLs que devolvem os dados, tudo isso pelo protocolo HTTP. PArqa facilitar a solicitação de URL por parte de um cliente e processar as respostas do servidor a essas solicitações, muito habitualmente se utiliza uma biblioteca a parte chamada cURL, que tem uma série de funções e procedimentos para enviar o conteúdo de URLs.
Assim pois, para utilizar a API do Twitter entra em jogo uma nova API ou bilbioteca, o cURL, mas não se preocupe, a biblioteca cURL tem uma implementação dentro do PHP, assim como em muitos outros sistemas, para que possamos utilizá-la facilmente para acessar a API do Twitter.
Tal como indicam na própria documentação da API do cURL, poderíamos lançar esse comando para acessar a "public timeline" (as últimas mensagens públicas enviadas por todos s usuários do Twitter):
curl http://api.twitter.com/1/statuses/public_timeline.rss
Dado que esse comando serve para acessar informações públicas, não requer autenticação de usuários para usar a API do Twitter. Existem muitas outras URLs de consulta da API que necessitam de autenticação, como veremos a seguir.
No próximo exemplo solicitamos as últimas 20 informações postadas pelos seguidores do usuários autenticado que realiza esta conexão com a API, cujos dados de login são enviados através do comando cURL:
Nesse caso obteremos os resultados em XML, o formato que se utiliza para os feeds RSS.
Os comandos mostrados acima foram testados usando linhas de comando no Linux, que tem o cURL instalado. No Windows não tem o comando instalado, sendo necessário fazer o download na página http://curl.haxx.se/download.html, para a versão Windows. Com isso terás um ZIP e dentro dele um curl.exe que é o próprio comando para que possa executar as linhas de comando pelo Windows.
No próximo tutorial mostraremos como fazer um simples script PHP que usa cURL para acessar a API do Twitter.