Introducción
En el desarrollo web moderno, disponer de imágenes de calidad es clave para el atractivo visual de un proyecto. Afortunadamente, existen varias APIs gratuitas que nos permiten obtener o generar imágenes de forma sencilla, sin incurrir en costes ni complicaciones. En este post aprenderás a consumir dos servicios populares—Unsplash Source y Lorem Picsum—mediante ejemplos prácticos en JavaScript y Python. ¡Empecemos!
APIs gratuitas y populares
Antes de sumergirnos en el código, veamos brevemente las características de estas APIs:
- Unsplash Source: permite obtener imágenes libres con parámetros de tamaño y búsqueda de palabras clave en la URL. Ojo, que últimamente da errores.
- Lorem Picsum: genera imágenes de placeholder basadas en fotos aleatorias o por ID, con opciones de tamaño y filtros.
- Pexels (opcional): ofrece un plan gratuito con API Key, ideal si necesitas buscar fotos temáticas. Requiere registro.
Uso básico de Unsplash Source
Unsplash Source no requiere autenticación. Basta con construir la URL adecuada:
https://source.unsplash.com/800x600/?nature,water
en la que “800×600” indica el tamaño y “nature,water” las palabras clave separadas por comas. Cada petición devuelve una imagen aleatoria que cumpla esos criterios.
Uso básico de Lorem Picsum
Lorem Picsum funciona de forma similar para placeholders. Por ejemplo:
https://picsum.photos/id/237/800/600
devuelve la imagen con ID 237 a 800×600 píxeles. Si omites el ID:
https://picsum.photos/800/600
obtendrás una foto aleatoria del catálogo.
Ejemplo en JavaScript (Fetch API)
Aquí un fragmento para insertar una imagen de Unsplash Source en tu página:
const img = document.createElement('img');
img.src = 'https://source.unsplash.com/400x300/?technology,computer';
img.alt = 'Imagen generada por Unsplash Source';
document.body.appendChild(img);
Para Lorem Picsum bastaría cambiar la URL por https://picsum.photos/400/300. Con fetch() también podrías precargar la imagen y manejar errores.
Ejemplo en Python (requests)
Si trabajas en backend o scripts, usa requests para descargar la imagen:
import requests
url = 'https://picsum.photos/600/400'
response = requests.get(url)
if response.status_code == 200:
with open('imagen.jpg', 'wb') as f:
f.write(response.content)
print('Imagen descargada correctamente')
else:
print('Error al obtener la imagen:', response.status_code)
Integración en tu proyecto web
Estas APIs son ideales para galerías dinámicas, fondos de sección o placeholders en periodos de desarrollo. Puedes combinar parámetros (tamaño, filtros, búsquedas) para personalizar al máximo el resultado. Recuerda respetar la atribución si la documentación oficial lo solicita y revisar los términos de uso.
Conclusión
Usar APIs gratuitas de imágenes acelera tu flujo de trabajo y reduce dependencias. Con unos pocos ajustes de URL y líneas de código en JavaScript o Python, tendrás contenido visual atractivo y variado. ¡Anímate a experimentar con diferentes keywords y tamaños para darle vida a tus proyectos!