Python - uso de json

 
Vista:
sin imagen de perfil
Val: 26
Ha disminuido su posición en 4 puestos en Python (en relación al último mes)
Gráfica de Python

uso de json

Publicado por César Alfredo (9 intervenciones) el 27/01/2021 03:34:18
hola tengo el siguiente problema, es con uso de json, ya hice algo de código pero ya no se como seguir, ojalá puedan ayudarme :), use la api de perros
Descripción:
Como apoyo académico en la enseñanza de razas caninas y gatunas para los alumnos de veterinaria se te ha
comisionado la elaboración de una herramienta para visualizar imágenes aleatorias, nombres e información
adicional mediante la interacción con el usuario.
El proyecto a realizar consiste en presentar una serie de opciones a través de un menú en consola para que el
usuario pueda elegir de una lista de razas y visualizar la imagen e información relativa de un perro/gato de la
raza elegida, visualizar una imagen e información relativa de forma aleatoria así como buscar y mostrar
imágenes a partir del texto que el usuario ingrese en un campo.
Instrucciones:
Realizar un menú con las siguientes 3 opciones y ejecutar las acciones respectivas para cada una:
1. Mostrar un perro/gato aleatorio.
A. Muestra una imagen, nombre, temperamento y rango de vida de forma aleatoria.
p.Ej.[IMAGEN]
Nombre: Chihuahua
Temperamento: Devoted, Lively, Alert, Quick, Courageous
Rango de vida: 12 - 20
2. Mostrar lista de nombres de razas de perros/gatos.
A. Solicitar seleccionar una raza.
a. Mostrar la imagen e información (nombre, temperamento y rango de vida) de la raza
seleccionada.
[IMAGEN]
Nombre: Chihuahua
Temperamento: Devoted, Lively, Alert, Quick, Courageous
Rango de vida: 12 - 20
3. Buscador de perros/gatos.
A. Solicitar el término de búsqueda del nombre de la raza.
a. Buscar y mostrar la lista de resultados, cada resultado con imagen, nombre, temperamento,
rango de vida.
La búsqueda se puede realizar tomando en cuenta las letras iniciales del nombre de la raza.
p.Ej.
Se busca: bull
Resultados:
-[IMAGEN]
Bullterrier
Temperamento: Trainable, Protective, Sweet-Tempered, Keen
, Active
Rango de vida: 11 - 12
********************
-[IMAGEN]
Bulldog
Temperamento: Gregarious, Docile, Willful, Friendly
Rango de vida: 8 - 10
********************
...
Cada que se finaliza una acción se debe tener una opción para regresar al menu principal (sin salir de la
ejecución del programa) o continuar en la opción seleccionada.
Utilizar excepciones para controlar comportamientos inesperados.
Controlar los casos donde el usuario escriba opciones incorrectas o existan opciones no encontradas.
p.Ej.
Cuando se hace una búsqueda y no existan registros a mostrar, se debe indicar que la
búsqueda no arrojó resultados y permitir que se realice nuevamente.Preparación de la información:
Como fuentes de datos se utilizarán las APIs:
Gatos: https://thecatapi.com/
Perros: https://thedogapi.com/Perros: https://thedogapi.com/
que serán asignadas de forma aleatoria a cada equipo (en clase). Es decir, cada equipo utilizará una única
API, sólamente consultará información de perros o gatos.
Para poder realizar consultas *ES NECESARIO contar con una llave que se obtiene registrándose con un
correo en alguna de las dos páginas . Ésta se debe enviar como parámetro en cada consulta.
p.Ej.
https://api.thedogapi.com/v1/images/search?api_key=f6d22bea-5c80-4644-a117-c2bd0477f2
Dichas APIs cuentan con diversas funciones (endpoints), como obtener la lista de razas, obtener una raza
específica e imágenes, etc. Se debe verificar cuáles funciones son adecuadas para nuestro propósito y de
qué forma se encuentra estructurada la información que proveen.
Documentación para consulta de gatos:
https://docs.thecatapi.com/
https://docs.thecatapi.com/api-reference
Documentación para consulta de perros:
https://docs.thedogapi.com/
https://docs.thedogapi.com/api-reference
***
1
2
3
4
5
6
7
8
9
10
11
12
13
14
import requests
import json
 
r=requests.get(url='https://api.thedogspi.com/v1/breeds/?apikey=18ca7b2a-6831-4625-bc3c-3c47f800d6c2')
print(json. dumps(r.json(),indent=2))
lista_razas=r.json()
for raza in lista_razas:
  print(json. dumps(raza, indent =2))
  nombre=raza['name']
  temperamento =raza['temperament']
  esperanza_vida=raza['life_span']
  print(perro.nombre)
  print(perro.temperamento)
print(perro.esperanza_vida)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder