Promoção no ar
Tempo restante da oferta:
13 Horas
35 Min
35 Seg
Assinar →

Consumindo APIs com Python - Parte 2

Veja neste artigo como consumir APIs com Python.

Fagner Pinheiro 6 anos atrás

Vimos no último artigo como buscar dados em APIs externas utilizando o Python e o quão simples este processo é. Agora, para completar o CRUD, veremos como inserir, editar e remover itens de uma API externa com Python e, com isso, entender o processo de consumir APIs com Python.

Cadastrando dados em uma API

Como vimos no artigo anterior, nossa API irá armazenar tarefas a serem realizadas. Estas tarefas são compostas por um título e uma descrição.

Sendo assim, para cadastrar uma tarefa na API, precisamos seguir o mesmo padrão que a API espera como requisição. Para isso, para inserir dados na API, basta enviar uma requisição do tipo POST (para cadastar dados) com um objeto do tipo Tarefa (possuindo título e descrição).

Para isso, o primeiro passo é criar uma classe Tarefa e definir, em seu construtor, os atributos título e descrição, como podemos ver abaixo:

class Tarefa():
    def __init__(self, titulo, descricao):
        self.titulo = titulo
        self.descricao = descricao

Agora, basta enviar uma requisição para a API utilizando o verbo POST e, em seu corpo (utilizando o atributo data ), converter o objeto do tipo tarefa para um json, como podemos ver abaixo:

import requests
import json
import tarefa

def buscar_dados():
    request = requests.get("http://localhost:3002/api/todo")
    todos = json.loads(request.content)
    print(todos)
    print(todos[0]['titulo'])

def cadastrar_dados(tarefa):
    requests.post("http://localhost:3002/api/todo",
                  data=json.dumps(tarefa.__dict__))

if __name__ == '__main__':
    cadastrar_dados(tarefa.Tarefa("Escrever o artigo de Python", "Segunda parte"))
    buscar_dados()

Curso Python - Orientação a objetos Conhecer o curso

Para que um objeto Python possa ser convertido para um json, precisamos utilizar o __**dict**__ para este objeto como parâmetro do método dumps() do pacote json. Agora, ao executar o código acima, a tarefa será cadastrada em nossa API, como podemos ver abaixo:

Cadastrando dados na API

Editando dados em uma API

O processo de edição consiste em enviar o id de uma tarefa (que será editada) na url da requisição e os novos dados da tarefa a ser editada. É uma mistura dos métodos cadastrar_dados() e listar_dados_id() .

Para isso, o verbo HTTP utilizado para este tipo de requisição é o PUT , responsável por editar dados em uma API. Sendo assim, o código responsável por editar dados em uma API utilizando o python pode ser visto abaixo:

def editar_dados(id, tarefa):
    requests.put(f"http://localhost:3002/api/todo?id={id}",
                 data=json.dumps(tarefa.__dict__))

Como podemos ver acima, o processo é bem simples, basta enviar o id da tarefa e os dados a serem editados.

Curso Django - Fundamentos Conhecer o curso

O resultado da execução pode ser visto abaixo:

Editando dados na API

Removendo dados de uma API

A remoção de elementos também é muito simples. Basta enviar uma requisição utilizando o verbo DELETE do HTTP com o id da tarefa que queremos remover:

def remover_dados(id):
    requests.delete(f"http://localhost:3002/api/todo?id={id}")

Agora, ao executar o método desenvolvido, já estamos prontos para remover dados da API:

Removendo dados de uma API

Conclusão

O uso de APIs em um projeto é de grande importância, visto que há casos em que precisamos obter dados de servidores remotos para utilizar em nossos projetos. No Python, o processo de consumir APIs com Python é bem simples como pudemos ver em todo o artigo.

Continue lendo

Artigos relacionados

Um ano de acesso total para você viver de programação.

Todos os cursos e formações da TreinaWeb numa única assinatura, com professores que atuam no mercado, suporte direto e certificados. Do primeiro console.log ao mercado de trabalho.

  • 1 ano de acesso a todos os cursos
  • Cursos novos toda semana
  • Suporte direto com professores
  • Plano de carreira personalizado
  • Certificados digitais inclusos
  • Aplicativos para Android e iOS, com acesso offline
Garantia incondicional de satisfação

Teste por 7 dias e, se não fizer sentido para você, devolvemos seu dinheiro.

Acesso completo a todos os cursos e dezenas de Formações.

12 meses
Economize R$ 840,00 54% OFF

de 12x R$ 129,00 por apenas

12x R$ 59,00

sem juros no cartão de crédito ou R$ 599,00 à vista

Oferta termina em 13h 35min 35s

  • Acesso imediato e ilimitado durante 1 ano.
  • Plano de carreira personalizado.
  • Suporte direto com professores.
  • E muito mais!
Matricule-se agora