import requests
import json
# URL da API
url = 'https://guilhermeonrails.github.io/api-restaurantes/restaurantes.json'
try:
# Faz a requisição HTTP
response = requests.get(url)
response.raise_for_status() # Lança um erro para códigos de status 4xx/5xx
# Converten a resposta para JSON
dados_json = response.json()
dados_restaurante = {}
# Processar os dados
for item in dados_json:
nome_do_restaurante = item.get('Company', 'Desconhecido')
if nome_do_restaurante not in dados_restaurante:
dados_restaurante[nome_do_restaurante] = []
dados_restaurante[nome_do_restaurante].append({
"item": item.get('Item', 'Sem Nome'),
"price": item.get('price', 'Preço Indisponível'),
"description": item.get('description', 'Sem Descrição')
})
# Salva os dados em arquivos JSON separados por restaurante
for nome_do_restaurante, dados in dados_restaurante.items():
nome_do_arquivo = f'{nome_do_restaurante}.json'
with open(nome_do_arquivo, 'w', encoding='utf-8') as arquivo_restaurante:
json.dump(dados, arquivo_restaurante, indent=4, ensure_ascii=False)
print("Arquivos JSON Gerados Com Sucesso!")
except requests.exceptions.RequestException as erro:
print(f"Erro Ao Acessar A API: {erro}")
except json.JSONDecodeError:
print("Erro Ao Decodificar O JSON Da Resposta!")
except Exception as erro:
print(f"Ocorreu Um Erro Inesperado: {erro}")
print(dados_restaurante['McDonald’s'])