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).
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 = 'http://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!