All for Joomla All for Webmasters
Mineração de Dados Python

Tweepy: obtendo os trending topics do Twitter em uma localidade específica

Uma das principais aplicações da análise de conteúdo no Twitter consiste na observação de tendências, especialmente pela característica da rede de Micro Blog: os usuários tendem a disseminar opiniões a respeito de assuntos, marcas e personalidades fortemente presentes no cotidiano. Essa característica permite uma análise de sentimento a respeito de termos específicos e auxilia por exemplo na tomada de decisão sobre campanhas publicitárias.

Em um post anterior, demonstrei como fazer um coletor de tweets em Python utilizando o Tweepy. Para a obtenção dos trending topics momentâneos da rede, os passos iniciais para instalação do Tweepy e obtenção dos tokens de acessos necessários para utilização da API são os mesmos. Neste caso, o parâmetro a ser obtido na utilização do código é o WOE (Where On Earth) ID, que determina a localização de referência, de onde os tópicos serão recuperados.  Você pode obter o ID de determinada localidade fazendo uma consulta no http://woeid.rosselliot.co.nz/. Caso queira obter os tópicos mundiais, o valor do WOE ID é definido por padrão como 1.

O CÓDIGO-FONTE

Se você já está familiarizado com o uso do Tweepy ou de qualquer outra biblioteca para utilização da API do Twitter, o código acima não deve apresentar nenhum obstáculo de compreensão. O método trends_place retorna um conjunto de objetos com informações dos tópicos no formato JSON, então utilizei o método dump da biblioteca JSON padrão para fazer o parsing e manipulação dessas informações. Para este caso, exibi apenas a informação “name” do objeto como mais relevante, que é o próprio título do tópico. Uma das vantagens de utilizar este método da API é que a quantidade de tópicos retornados é significantemente maior do que a exibida na versão web (limitada a 10 tópicos correntes). Quaisquer dúvidas ou sugestões, utilize os comentários ou entre em contato!

Você Também Pode Gostar

3 Comentários

  • Responder
    Breno Arruda
    7 de junho de 2018 at 03:54

    Ronan, estou a tentar usar o tweepy, mas eu recebo muitos erros de encoding por causa dos acentos. Lendo por aí, algumas pessoas dizem para usar algo do tipo:
    variavel.encode(‘utf-8’)
    Isso até faz o erro parar, mas ao invés de mostrar a letra acentuada, ele exibe algum código do tipo \xf4.
    Vc já passou por isso? (Já tentei colocar ali em cima como vc fez)

    • Responder
      Ronan Lopes
      7 de junho de 2018 at 10:35

      Bom dia, Breno! É comum que caracteres especiais apresentem esse formato (Unicode). O objetivo do unicode é atribuir códigos distintos a todos os caracteres de todas as línguas do mundo. O python e outras linguagens de programação armazenam esses caracteres e na hora de exibir, os exibem de acordo com a codificação assinalada. Por isso, no início do arquivo, assinalamos o # -*- coding: utf-8 -*-. Se você inspecionar a variável, esses símbolos irão aparecer, mas se der print no valor, o acento será exibido corretamente (pode tentar imprimir diretamente algum trend do array ou imprimir toda a lista como fiz no código). Além disso, se quiser fazer um teste, pode tentar atribuir, por exemplo: a = “coração” e depois inspecionar a variável a. Será exibido ‘cora\xc3\xa7\xc3\xa3o’. Então não se preocupe com o valor estar sendo armazenado assim na varíavel, apenas tenha o cuidado de observar se, na hora de exibí-lo, ele está sendo exibido corretamente. Boa sorte!

  • Responder
    Sannytet
    11 de dezembro de 2018 at 18:04

    Nice posts! 🙂
    ___
    Sanny

  • Deixe uma Resposta