Como coletar Tweets em tempo real com Python

Renato Lopo
4 min readNov 25, 2020

--

O Twitter é uma das maiores redes sociais do mundo, hoje no Brasil o Twitter pode ser visto como um lugar em que as pessoas expressam sua opinião sobre vários assuntos como política, futebol, religião, música, etc. O Twitter gera uma quantidade enorme de dados, que podem ser usados para várias coisas interessante, como fazer análise de sentimentos com a opinião das pessoas sobre um produto ou até mesmo sobre algum político, identificar tópicos, prever padrões, enfim, existem diversas análises que pode ser feita usando os tweets, não vou me estender muito aqui porque nosso foco é como coletar esses dados.

Para coletar os Tweets será usado a linguagem Python e a API oficial do Twitter.

Criando uma conta de desenvolvedor

Para usar a API do Twitter é preciso antes criar uma conta de desenvolvedor, que pode ser criada aqui , após criado uma conta você terá um painel a onde você cria seus projetos e aplicações, quando você criar uma aplicação será gerada algumas credenciais que você usará quando fazer as requisições.

Autenticação

Antes de tudo é preciso instalar a biblioteca tweepy caso ainda não tenha instalado na sua máquina, ela é responsável por fazer a conexão com a API do Twitter, depois a importamos

Agora usamos as chaves de acessos que estão na aplicação que foi criada lá no Twitter developer.

Como nosso objetivo é fazer a coleta dos tweets em tempo real usaremos o recurso de stream da API.

Agora fazemos uma instância do MyStreamListener, e passamos nossa autenticação.

Tudo pronto! Agora é só fazer as busca que desejarmos.

Usando palavras chaves

Para fazer uma busca utilizando palavras chaves usamos a função filter, e passamos como parâmetro uma lista com as palavras chaves que desejamos buscar, isso irar retornar os tweets que contem algum dos termos que foi passado na lista de palavras.

Resultado:

Como podemos ver a maioria dos Tweets estão em outro idioma, caso queira que só retorne tweets na língua portuguesa passe “ lang=’pt’ ” como parâmetro junto com a lista de palavras que esta buscando ou use a lista junto com a localidade que vamos mostrar agora.

Usando geolocalização

Uma outra forma de buscar por Tweets em tempo real e utilizando a geolocalização, para utilizar desse método antes precisamos das coordenadas do local em que deseja fazer a busca, para encontrar essas coordenadas podemos utilizar o site BoundingBox nele podemos selecionar qualquer local do mapa fazendo um desenho sobre um estado, país ou cidade e ele nos retorna suas coordenadas.

Ex: vamos selecionar o Brasil:

No canto inferior esquerdo após desenhado o mapa aparece as coordenadas, você deve deixar as coordenadas no modo CSV

Após ter as coordenadas do local em mão, vamos agora copiar e colar no nosso filtro.

Resultado:

Passando somente o local como parâmetro serão retornados tweets que foram postados dentro desse local sem especificação de palavras chaves, eu particularmente acho esse método o mais interessante.

Aqui nesses exemplos eu apenas imprimi na tela os tweets, mas caso queira você pode salvar eles em formato de arquivo ou em um banco de dados.

Lembrando que a API do Twitter tem alguns limites e obviamente ela não consegue coletar todos os tweets que são postados no Brasil, mas já é uma grande fonte de dados para quem pretende fazer alguma análise ou até mesmo aprender algo novo.

Bom, esse é o primeiro post que faço por aqui, esse método de coletar tweets baseado na sua localidade foi algo que tive bastante dificuldade para encontrar então resolvi posta aqui, não sou nenhum especialista no assunto só quis compartilhar o conhecimento, essa API do Twitter tem bastante recursos interessantes, recomendo que leiam a Documentação do tweepy caso queiram se aprofundar no assunto.

Espero ter ajudado alguém. :)

Renato Lopo — Acadêmico em Sistemas de Informação

--

--

Renato Lopo
Renato Lopo

Written by Renato Lopo

0 Followers

Estudante de Sistemas de informação no IFNMG campus Januária.

No responses yet