Como coletar informações de API usando python
como usar apis em python

Como coletar informações de API usando python

 

Nesse tutorial iremos estudar como coletar informações de API publica ou privadas usando Python. Os exemplos mostrados aqui poderão ser utilizados como base para consumir qualquer API Rest. Sendo assim, para ilustrar esse consumo utilizaremos exemplos simples de API’s que fornecem dados no formato JSON. 

Desenvolvimento


O primeiro passo para realizar a coleta de dados é saber qual endpoint iremos acessar. Nesse exemplo utilizaremos o IBGE como fonte de dados.  Utilizando o site do IBGE encontramos diversas API’s disponíveis para serem consumidas:

https://servicodados.ibge.gov.br/api/docs

Para este exemplo usaremos a API do IBGE sobre os nomes cadastrados no Brasil:

https://servicodados.ibge.gov.br/api/docs/censos/nomes?versao=2

Ao chamar a API com o seguinte endpoint:

https://servicodados.ibge.gov.br/api/v2/censos/nomes/joao

Recebemos o seguinte resultado:


[
	{
		"nome": "JOAO",
		"sexo": null,
		"localidade": "BR",
		"res":
		[
			{
				"periodo": "1930[", 
				"periodo": 60155 
			},
			{
				"periodo": "[1930,1940[", 
				"periodo": 141772
			}, 
			{
				"periodo": "[1940,1950[", 
				"periodo": 256001
			}, 
			{
				"periodo": "[1950,1960[", 
				"periodo": 396438
			}, 
			{
				"periodo": "[1960,1970[", 
				"periodo": 429148
			}, 
			{
				"periodo": "[1970,1980[", 
				"periodo": 279975
			}, 
			{
				"periodo": "[1980,1990[", 
				"periodo": 273960
			}, 
			{
				"periodo": "[1990,2000[", 
				"periodo": 352552
			}, 
			{
				"periodo": "[2000,2010[", 
				"periodo": 794118
			} 
		] 
	}
]


2.2- Para consumir uma API usando o Python podemos usar recursos nativos do Python:



# essa linha importa os recursos
import json, requests

# essa linha pega os recursos do link e atribui a variavel
response = requests.get("https://servicodados.ibge.gov.br/api/v2/censos/nomes/joao")

# realiza a conversão do response para um formato acessível ao python
json_data = json.loads(response.text)

# imprime na tela o valor do primeiro ano do censo - demonstração de navegação
print(json_data[0]['res'][0])

Lembre-se que para coletar informações em API é preciso que você tenha permissão para isso. Diversas empresas, como o Facebook, Twitter, Instagram, permitem que você crie aplicações que coletam esses dados. No entanto, existem políticas rígidas quanto ao uso dos dados.

Vinicius dos Santos

Apenas um apaixonado por Ciência da Computação e forma com que ela pode transformar vidas!

Deixe uma resposta