Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

[Projeto] requisições HTTP e dados externos

import requests 
import json

url = 'https://guilhermeonrails.github.io/api-restaurantes/restaurantes.json'
response = requests.get(url)
print(response)

if response.status_code == 200:
    dados_json = response.json()
    dados_restaurante = {}
    for item in dados_json:
        nome_do_restaurante = item['Company']
        if nome_do_restaurante not in dados_restaurante:
            dados_restaurante[nome_do_restaurante] = []
        
        dados_restaurante[nome_do_restaurante].append({
            "Item": item['Item'],
            "price": item['price'],
            "description": item['description']
        })
        
else:
    print(f'o erro foi {response.status_code}')

for nome_do_restaurante, dados in dados_restaurante.items():
    nome_do_arquivo = f'{nome_do_restaurante}.json'
    with open(nome_do_arquivo, 'w') as arquivo_restaurante:
        json.dump(dados, arquivo_restaurante,indent=4)
1 resposta

Oi, Apollo! Tudo bem?

Agradeço por compartilhar sua atividade requisições HTTP e dados externos.

Você fez uma boa construção ao buscar os dados com requests.get(), validar o status_code, organizar os itens por restaurante em um dicionário e gerar arquivos .json separados. Uma dica interessante para o futuro é usar encoding='utf-8' e ensure_ascii=False ao salvar arquivos JSON, pois isso ajuda quando os dados tiverem caracteres especiais. Veja este exemplo:


with open(nome_do_arquivo, 'w', encoding='utf-8') as arquivo_restaurante:
    json.dump(dados, arquivo_restaurante, indent=4, ensure_ascii=False)

Esse ajuste salva o arquivo com melhor suporte a textos e mantém a estrutura do JSON mais legível. Você chegou a abrir algum dos arquivos gerados para conferir se os itens ficaram agrupados do jeito esperado?

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!