Data Analytics Data Engineering Data Science Python

Extrair Dados da API do Cartola FC

Dados da API do Cartola FC

Fala galera do mundo dos dados! Quem aí falou em extrair dados da API do Cartola FC? Curte esse game totalmente baseado em dados? Se já conhece, venha construir a sua própria base de dados para fazer  suas análise! Se não, vem com o Dados ao Cubo que vai curtir! E já falamos aqui API com Python, o Céu é o Limite!

Para quem não conhece, o Cartola FC é um jogo eletrônico de futebol no estilo fantasy game, onde as pessoas montam seus times com jogadores de futebol da vida real, e pontuam de acordo com a atuação dos jogadores em campo. Sem mais enrolações explicações, partiu API do Cartola FC ao Cubo.

Python no Cartola FC

Primeiramente, vamos às bibliotecas necessárias para consumir esses dados da API do Cartola FC. A biblioteca Pandas será responsável por fazer toda a manipulação e exibição dos dados. A Requests fará a comunicação com a API para trazer os dados. E a Json vai auxiliar na manipulação dos dados no formato json que vai chegar da API. Na sequência o código Python para importar essas libs.

import pandas as pd
import requests
import json

Dessa forma, com as bibliotecas importadas, vamos as extrações de dados da API.

Pontuação da Rodada via API do Cartola FC

Para começar, temos os resultados das rodadas. Aqui, precisamos nos atentar de passar ao final da url, qual rodada que queremos os dados. Em seguida, faremos uma requisição com a função request, passado como parâmetros o método GET e a url. Finalizando com a leitura do objeto json com a função loads. Dessa forma teremos todos os dados na variável objetos, conforme código Python abaixo.

url      = 'https://api.cartola.globo.com/atletas/pontuados/6'
resposta = requests.request("GET", url)
objetos  = json.loads(resposta.text)

Em seguida, utilizaremos a função json_normalize do Pandas para estruturar os dados do json em um dataframe. No código Python a seguir, passamos como parâmetro para função a variável objetos que contém o json de dados e selecionamos os atletas

pd.json_normalize(objetos['atletas'].values()).head(3)

Então, a imagem a seguir, é o resultado do dataframe gerado com o código Python para cima.

DataFrame com Dados do Cartola FC

Depois dos atletas, faremos a extração dos dados das partidas. 

Dados das Partidas via API do Cartola FC

Para extrair os dados das partidas do Cartola FC, é bem semelhante ao que fizemos com os atletas. Também precisamos passar ao final da url, qual rodada serão extraídos os dados. Em seguida, mais uma requisição com a função request. Concluindo com a leitura do objeto json com a função loads. Observe como o código Python não muda quase nada, somente o valor da url.

url      = 'https://api.cartola.globo.com/partidas/6'
resposta = requests.request("GET", url)
objetos  = json.loads(resposta.text)

Agora precisamos da função json_normalize para estruturar os dados do json em um dataframe Pandas. É o que temos no código abaixo.

pd.json_normalize(objetos['partidas']).head(3)

E então, temos o resultado na imagem abaixo.

Dados da API do Cartola FC

Sendo assim, para fechar, os dados do mercado, jogadores e suas estatísticas.

Mercado Atualizado via API do Cartola FC

Na extração do mercado, temos os dados de clubes, posições, status e atletas. Mas todas elas virão em uma única requisição na API. Mais uma vez passamos a url, desta vez não tem informações de rodada. Na sequência, uma requisição com a função request. Concluindo com a leitura do objeto json com a função loads.

url        = 'https://api.cartola.globo.com/atletas/mercado'
resposta   = requests.request("GET", url)
objetos    = json.loads(resposta.text)

E faremos a normalização dos dados com a função json_normalize para estruturar os dados do json em um dataframe Pandas. É o que temos no código abaixo.

pd.json_normalize(objetos['clubes'].values()).head(3)

Confere nas imagens os dados sobre os clubes.

Dados da API do Cartola FC

Agora a normalização dos dados de posições.

pd.json_normalize(objetos['posicoes'].values()).head(3)

Aqui teremos as descrições das posições.

Dados da API do Cartola FC

Chegou a vez da normalização dos dados dos status.

pd.json_normalize(objetos['status'].values()).head(3)

Observe a imagem que contém os dados dos status dos jogadores.

Dados da API do Cartola FC

E fechamos com a normalização dos dados dos atletas. Esses dados são diferente da primeira informação de atletas que pegamos, fique ligado!

pd.json_normalize(objetos['atletas']).head(3)

E para fechar os dados da API do Cartola FC, a imagem com as informações de mercado dos atletas.

mercado dos atletas Cartola FC

Agora é se divertir com o parquinho, fazer a sua SUPER análise e dar aquela mitada no Cartola FC.

API do Cartola FC ao Cubo

Portanto, vimos aqui algumas das principais consultas possíveis na API do Cartola FC. Esse é o começo para montar sua análise depois de extrair dados da API do Cartola FC. Aqui fizemos todos os códigos consumido do dados da API do Cartola 2023. Então, para dar aquela mitada e ter suas análises exclusivas, monta sua própria base de dados da API do Cartola 2023. Para complementar a sua análise, não deixe de conferir a análise de dados do brasileirão série A. Agora é com você, sucesso e boa mitada!!! Não deixe de assinar a nossa Newsletter e ficar por dentro de todas as novidades do mundo dos dados. Um abraço e até a próxima!!!

Conteúdos ao Cubo

Então, se você curtiu o conteúdo, aqui no Dados ao Cubo tem muito mais. Assim, deixo algumas sugestões de conteúdos que você pode encontrar. Sempre falando sobre o mundo dos dados!

Para finalizar, se torne também Parceiro de Publicação Dados ao Cubo. Escreva o próximo artigo e compartilhe conhecimento para toda a comunidade de dados.

Gostou? Compartilhe!

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *