Cómo usar los datos de JSON API en Python
- 4577
- 473
- Sra. María Teresa Rentería
Objetivo
Consumir una API JSON en Python.
Distribuciones
Esto funcionará en cualquier distribución de Linux.
Requisitos
Una instalación de Linux que funciona con Python.
Dificultad
Fácil
Convenciones
- # - requiere que los comandos de Linux dados se ejecuten con privilegios raíz directamente como un usuario raíz o mediante el uso de
sudo
dominio - ps - Requiere que los comandos de Linux dados se ejecuten como un usuario regular no privilegiado
Introducción
Una de las principales razones por las que le gustaría trabajar con JSON en Python es consumir API. Hay cientos de excelentes API públicas y listas para usar en su aplicación. Incluso los grandes reproductores en la web, como Facebook y Twitter, out a las API para que trabajes con.
Puede crear aplicaciones completas sobre datos de API, incluida la creación de aplicaciones web que agregan, manipulen y muestren esos datos de manera conveniente.
Configurar un archivo
Antes de comenzar a trabajar con API, debe configurar un archivo de Python. Es mucho más fácil que trabajar en el intérprete. Comience importando el módulo JSON.
importar json
Necesitarás urllib3
. Le permite acceder a una url con python.
importar urllib3
Abrir la URL
Si bien hay un montón de grandes API en Internet, la mayoría de ellos requieren que se registren para obtener una llave de API. Esta guía no se trata de eso o de usar una API específica. La API de OpenDota proporciona acceso a una tonelada de datos relacionados con el popular MOBA DOTA2 sin la necesidad de registrarse o obtener una clave. En caso de que no lo supiera, está disponible para Linux. Esa es la API que usará esta guía.
Puede encontrar la documentación para toda la API en https: // documentos.Opendota.comunicarse
, Pero esta guía usará el https: // API.Opendota.com/api/héroes
Datos de héroes.
Empiece por crear un PoolManager ()
objeto usando urllib3
. Es ese objeto que puede usar para hacer solicitudes en un sitio web.
http = urllib3.PoolManager ()
Hacer una CONSEGUIR
Solicitar usando el http
Objeto que acabas de crear en la API DOTA.
Heroes = http.Solicitar ('Get', 'https: // API.Opendota.com/api/héroes ')
Analizar el json
Intente imprimir el héroes
variable que acabas de crear.
Imprimir (héroes)
No es lo que esperabas? Sigue siendo un objeto de solicitud, y tiene más datos de los que necesita. Intenta imprimir héroes.datos
Imprimir (Héroes.datos)
Que se ve más de cerca, pero todavía no está del todo. Decodifique los datos a UTF-8.
Imprimir (Héroes.datos.Decode ('UTF-8')))
Ahora, eso es Json. Puedes analizar eso con el módulo JSON.
heroes_dict = json.Cargas (héroes.datos.Decode ('UTF-8')) Impresión (Heroes_Dict)
Trabajar con los datos
Tienes un diccionario de Python que contiene todos los datos de la API. Ahora puede usar esos datos como elija. Prueba iterando sobre él.
Para Hero en Heroes: Print (Heroes ['Localized_Name'])
Tu bucle imprimirá el nombre de cada héroe en Dota2. Puede ver en el diccionario que hay más datos de toneladas, pero sabe cómo acceder a eso.
Pensamientos de cierre
El camino no había tan tan directamente, pero ciertamente llegó allí. Si está haciendo esto con las teclas API, solo cambiará la estructura de URL. Todo lo demás debería seguir siendo el mismo en todo. Ahora está equipado para acceder a los datos de API de sus programas de Python.
Ejercicio
Pick y API de https: // github.com/Toddmotto/Public-APIS
, y convertirlo en un diccionario de Python. Iterar sobre él e imprimir los valores de al menos dos claves.
Tutoriales de Linux relacionados:
- Cosas para instalar en Ubuntu 20.04
- Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
- El mejor reproductor de música para Linux
- Descarga de Linux
- Comandos de Linux: los 20 comandos más importantes que necesitas ..
- La mejor distribución de Linux para desarrolladores
- Cómo habilitar grandespages en Linux
- Una introducción a la automatización, herramientas y técnicas de Linux
- Comandos básicos de Linux
- Cómo imprimir el árbol de directorio usando Linux
- « Cómo organizar sus contraseñas utilizando Pass Passions Manager
- Cómo reemplazar Systemd con Sysv Init en Debian Linux »