Cómo usar los datos de JSON API en Python

Cómo usar los datos de JSON API en Python

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