Conhecendo o Tarantulla Facebook

Conhecendo o Tarantulla Facebook

Juliana Carvalho
Oncase
Published in
4 min readAug 21, 2018

--

Neste post vamos falar sobre o módulo do Tarantulla para extrair dados do Facebook. A Oncase desenvolveu esse módulo visando extrair informações como o engajamento, a quantidade de likes e a quantidade de compartilhamentos dos posts de uma página fornecida.

Para isso, utilizamos a Graph API, ferramenta disponibilizada pelo Facebook que nos permite colher algumas informações públicas nas páginas da rede social. Os dados recuperados fornecem importantes insights aos usuários.

Em seguida, mostraremos um breve exemplo de utilização do Tarantulla Facebook. Escolhemos 6 dos canais de notícias mais visitados no Brasil e vamos analisar suas respectivas páginas do Facebook. São eles: G1, Terra, Yahoo Brasil, R7, Uol Notícias e o Estadão.

Vamos analisar as informações retornadas:

O gráfico abaixo mostra o total de reações entre os meses de fevereiro e maio (24/02/2018 a 24/05/2018):

Além disso, podemos observar, no mesmo período, o total de interações de cada um dos portais, as interações são a soma de reações, compartilhamentos e comentários:

Isso resulta em um engajamento total de:

95% G1

70% UOL Notícias

54% Estadão

33% R7

20% Terra Brasil

15% Yahoo Brasil

Como mostra o gráfico abaixo:

Já se analisarmos os 13 dias entre 10 de maio e 23 de maio, temos:

Configurando o Tarantulla-Facebook

Se você deseja saber detalhes sobre o deploy da solução, sugerimos que visite a página da Oncase no Github:

Vamos seguir alguns passos para a configuração e deploy da solução. São basicamente 3 passos:

  1. Clonar repositório Git
  2. Ajustar arquivo de publishers
  3. Ajustar arquivo com chaves da API

E, caso deseje integrar os resultados com um banco de dados, temos dois passos adicionais:

4. Ajustar arquivos com informações sobre o banco de dados

5. Executar script SQL

Vale ressaltar que a integração com o banco de dados é feita através do PDI — Pentaho Data Integration — uma plataforma para acelerar a construção de fluxos de processamento de dados.

Dito isto, vamos explicar cada passo:

  1. Inicialmente, clone o repositório, preferencialmente em ‘/opt/git’.
  2. Depois configure o arquivo config-timeline.json, que contém as páginas que iremos acessar:
{
"temp_output": "../data/",
"python-command":"python3",
"dateFrom" : "2017-05-14",
"dateTo" : "" ,
"publishers" :
[
{
"userName": "AndroidPIT.br",
"name": "AndroidPIT BR"
}
]
}

3. Ajustar arquivo api-keys.json

Você deve possuir as chaves de acesso da API, que serão utilizadas pelo Tarantulla-Facebook. Edite o arquivo api-keys.json, informando suas chaves.

Será necessário informar a ACSSTKFB, que guarda a chave de acesso à API.

4. Ajustar arquivo config-db.json

Edite o arquivo config-db.json informando o nome do banco, nome de schema e da tabela que serão utilizados, bem como a senha e outras características relevantes.

5. Executar script SQL

O script SQL possui uma cláusula CREATE TABLE que será responsável por criar a tabela. Lembre-se de alterar esse script de acordo com o nome do schema e da tabela que deseja utilizar.

Executando o Tarantulla-Facebook

Pronto! Agora basta rodar o Tarantulla-Facebook para obter os dados desejados.

Se quiser executar com o PDI, insira o comando:

$ <PDI_HOME>/./kitchen.sh  -file="<YOUR TARANTULLA FACEBOOK FOLDER>/etl/main.kjb"

Caso você tenha configurado PDI_HOME para /opt/Pentaho/design-tools/data-integration é suficiente executar:

$ <YOUR TARANTULLA FACEBOOK FOLDER>/scripts/etl.sh job ../etl/main.kjb

E sem PDI:

$ python3 user_timeline_posts.py

Issues:

Ainda estamos analisando as novas funcionalidades, mas já pensamos em acrescentar algumas como: Tipo de publicação, quantidade pelo tipo de reações (LOVE, WOW, entre outros).

Espero que o post tenha sido útil para você. Vejo vocês na próxima!

--

--