» » Python: Tutorial básico de la API de Marvel

Python: Tutorial básico de la API de Marvel

 

Python: Tutorial básico de la API de Marvel


Desde el blog de Uxio.... Para empezar, comentar que Marvel ha puesto hace tiempo una API con mucha información de sus cómics, personajes, etc. lo que la hace muy interesante para probar bases de datos y sacar estadísticas y demás.

En primer lugar nos registramos en https://developer.marvel.com y obtenemos una clave pública más otra privada para realizar las consultas a la API.

La petición debe llevar obligatoriamente 3 parámetros: apikey, ts, y hash:
  • apikey es la clave pública.
  • ts es un valor de timestamp, pero si queremos podemos usar un long (en Python todo entero corriente es un long).
  • hash, que se calcula MD5(ts + clave_pública + clave_privada).
Y ahora, esto es un rollo así que vamos a pasar al código que es mucho más bonito:

Para hacer las peticiones he empleado la librería requests (pip install requests), muy recomendable, aunque podríamos usar la librería urllib que viene por defecto en Python. Importamos también la librería hashlib para hacer el cálculo MD5. Primero, las claves públicas y demás:
 
import hashlib
import requests
public = 'claveprivada'
private = 'clavepublica'
ts = '1'
hash = hashlib.md5((ts + pr + pu).encode()).hexdigest() 

Ahora ya podemos hacer las peticiones:

base = 'https://gateway.marvel.com/v1/public/'
comics = requests.get(base + 'comics',
                      params={'apikey': public,
                              'ts': ts,
                              'hash': h}).json()
characters = requests.get(base + 'characters',
                          params={'apikey': public,
                                  'ts': ts,
                                  'hash': h}).json()
wolverine = requests.get(base + 'characters',
                          params={'apikey': public,
                                  'ts': ts,
                                  'hash': h,
                                  'name': 'wolverine'}).json() 

Con esto os queda una pequeña chuleta para trabajar con la API de Marvel, aunque si no queréis hacerlo directamente hay varias librerías por ahí, como PyMarvel. Un saludo a todos!

Deja un comentario

Información
Atención! Usuarios que están en este grupo no pueden dejar comentarios en la página...Primero debes Registrarse!