Api do Twitter

Muitos sites liberam suas interfaces para que outros programadores possam usar seus serviços, isso é muito útil, por exemplo, para implementar o Google Maps na sua aplicação ou solicitar algum dado ao Instagram ou Facebook. Nessa postagem vou mostrar como usar a Api do Twitter.

O primeiro passo é ter uma conta no Twitter e depois ir para a área de desenvolvimento do Twitter e cadastrar seu App, esse cadastro serve simplesmente para ter as chaves de acesso para que seja possível fazer o consumo de dados do Twitter.

twitter_api_001

twitter_api_002

Depois de feito isso, basta ir em “Create New App”, será solicitado informações como o nome do App, site (você pode preencher ou deixar em branco) e uma breve descrição.

twitter_api_004

O Campo “Website” deve ser preenchido com: http (ou https)://www[site…].
O Campo “Callback URL” seria para o caso de sua URL principal sofrer algum problema, ai entraria em ação essa URL reserva.

Depois disso você vai receber as chaves para começar a fazer os acessos na base dados do Twitter.

twitter_api_005

twitter_api_006

Anote os valores de todas as chaves (“Consumer key, secret, Access Token, secret”), vamos precisar delas para fazer a autenticação, é dessa forma que o Twitter mantem o controle das aplicações que ficam consumindo dados em suas bases.

twitter_api_007

Na imagem acima, temos a documentação do Twitter em relação a como sua Api deve ser usada, existem dois métodos, o GET e o POST.
Método GET são informações geralmente passadas pela URL e apenas pegam outras informações, métodos POST são usados nos formulários HTML e fazem interação com o ambiente, por exemplo, se você quiser deletar um amigo de sua conta ou quiser fazer uma postagem no Twitter usando a Api.

O link é: https://dev.twitter.com/rest/reference/get/search/tweets

Para facilitar na hora de fazer a conexão com a Api, eu usei uma Classe já pronta em PHP do James Mallison, você pode pega-la aqui.

twitter_api_008

twitter_api_011

Precisamos apenas do arquivo “TwitterApiExchange.php”.

twitter_api_012

A aplicação que fiz faz simplesmente uma busca por palavras e localiza as pessoas que fizeram referência para aquela palavra, por exemplo: Buscar os usuários que usaram a palavra “Michel Temer” em suas postagens.

No link da Classe PHP, James Mallison mostra a forma como deve ser feita a configuração para que a Class funcione corretamente, o ponto importante aqui é o Array “Settings”, é nele que vamos inserir as chaves que o Twitter nos passou e o “oath_access_token” e oath_access_token_secret” são simplesmente o Access Token e Access Token Secret que o Twitter já te passou.

Atenção para as URLs, esse método de requisição é o GET, ou seja, os dados devem ser solicitados pela URL.

$url = ‘https://api.twitter.com/1.1/search/tweets.json‘;
$getfield = “?q=$search&lang=pt&result_type=mixed&count=13“;

A variável URL é a URL Base para a Api do Twitter, já a variável GETFIELD é onde a Classe PHP vai fazer a solicitação, a documentação dela você pode achar aqui.

As palavras em negrito são alguns dos argumentos que essa requisição aceita, na documentação tem tudo isso explicado, mas para exemplificar de forma simples, segue algumas informações:

?q=$search = Aqui é onde vamos inserir a palavra que queremos buscar, esse valor vai ser preenchido com o valor inserido em $argv[1] conforme algumas imagens acima.

lang=pt = Estou informando que quero resultados apenas em português.

count=13 = Estou informando que quero apenas 13 resultados, o máximo permitido é 100.

É possível inserir diversos outros dados, como latitude, longitude e raio de distância por exemplo.

twitter_api_013

Depois disso, fiz um lanço FOR para percorrer todas a ocorrências e mostrar os dados na tela. Toda a saída da consulta eu joguei a variável $QUERY, caso tenha dúvidas em quais são os conteúdo dessa variável, basta fazer testes com outras funções do PHP, como por exemplo o PRINT_R e o VAR_DUMP.

Então, para usar esse script em linha de comando só é preciso inserir a palavra que quer buscar.

twitter_api_009

twitter_api_010

É um pouco cansativo de configurar, mas depois de feito é bem simples e rápido, fiz também uma versão web.

twitter_api_014

Caso queira verificar esse script no seu computador, pode baixo aqui.