bdeapi
Cliente en Python ligero y con tipos anotados para consultar de forma sencilla el Servicio Web de Estadísticas (API REST JSON) del Banco de España (BdE / BIEST).
Transforma automáticamente las respuestas en formato JSON en DataFrames de Pandas listos para análisis financiero, econométrico y estadístico.
[!WARNING]
bdeapies una librería de código abierto independiente desarrollada por la comunidad y no tiene ninguna relación, afiliación, patrocinio ni respaldo oficial del Banco de España.
Características
- Interfaz Pythonic: Utiliza argumentos descriptivos en Python (
listado_series,rango_temporal, etc.) que el cliente traduce automáticamente a los parámetros requeridos por la API HTTP. - Integración nativa con Pandas: Devuelve la información limpia y estructurada directamente en objetos
pandas.DataFrame. - Manejo flexible de argumentos: Acepta listas, tuplas o conjuntos para las series y los convierte automáticamente al formato delimitado por comas que exige el servidor.
- Validación de parámetros: Decoradores internos que filtran parámetros no válidos antes de realizar la petición HTTP.
Instalación
Puedes instalar la librería directamente desde PyPI o tu gestor de paquetes preferido:
pip install bdeapi
O usando uv:
uv add bdeapi
Inicio Rápido
1. Obtener el último dato disponible de una o varias series
from bdeapi import ultimo_dato
# Consultar el último valor del Euríbor a 1 año y 3 meses
df_data, df_metadata, df_info = ultimo_dato(
idioma="es",
listado_series=["D_1NBAF472", "D_DNBAD172"],
)
# Imprimir los valores numéricos y sus fechas
print(df_data)
2. Consultar el catálogo o metadatos de series
from bdeapi import listado_series
# Obtener información del catálogo para una serie específica
df_data, df_metadata, df_info = listado_series(
idioma="es",
listado_series="D_1NBAF472",
)
Estructura de las Respuestas
Todas las funciones de consulta devuelven siempre una tupla con 3 DataFrames de Pandas:
| DataFrame | Contenido / Descripción |
|---|---|
df_data |
Datos de la serie temporal (serie, fechaValor, valor, etc.) |
df_metadata |
Metadatos de frecuencia y precisión (descripcionCorta, codFrecuencia, decimales, etc.) |
df_info |
Títulos e información descriptiva detallada proporcionada por el BdE |
Parámetros Soportados y Mapeo Interno
Para facilitar el desarrollo, bdeapi traduce de forma transparente los argumentos de Python a la QueryString que exige la API HTTP del Banco de España:
| Parámetro en Python | Parámetro URL (API BdE) | Tipos Aceptados | Ejemplo |
|---|---|---|---|
idioma |
idioma |
str |
"es", "en" |
listado_series |
series |
str, list, tuple |
["D_1NBAF472", "D_DNBAD172"] |
rango_temporal |
rango |
str |
"2024-01-01,2026-01-01" |
Pruebas Unitarias
Para ejecutar la suite de tests y verificar la cobertura del código:
# Ejecutar los tests
pytest
# Reporte de cobertura de código
pytest --cov=bdeapi
Licencia
Este proyecto está distribuido bajo la Licencia GPL-3.0. Consulta el archivo LICENSE para más detalles.
Documentación de la API
⚠️ Exención de Responsabilidad (Disclaimer)
Este proyecto es una librería no oficial y de desarrollo independiente. No está afiliado, asociado, autorizado, respaldado ni conectado de ninguna manera con el Banco de España (BdE) ni con ninguna de sus filiales u organismos oficiales.
- El nombre Banco de España, BIEST y las marcas o nombres relacionados son marcas registradas de sus respectivos propietarios.
- Este paquete únicamente facilita la interacción programática con el servicio web de datos abiertos del Banco de España a través de sus endpoints públicos.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file bdeapi-0.1.0.tar.gz.
File metadata
- Download URL: bdeapi-0.1.0.tar.gz
- Upload date:
- Size: 5.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
24df2838441c1a58ad636037f208de197da2dd0c7770ae782513a3306b86e349
|
|
| MD5 |
1857a195ff5dc8a4b78ba7768541bfc8
|
|
| BLAKE2b-256 |
41e70c3f5550509a24e5173b7ec3159651bcd3c7cbfe246df6b34e327da73013
|
File details
Details for the file bdeapi-0.1.0-py3-none-any.whl.
File metadata
- Download URL: bdeapi-0.1.0-py3-none-any.whl
- Upload date:
- Size: 7.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bab2414361e34fc0df3e1383a1ceb744c3323b6ed63923f35bfae3afd4c88f8b
|
|
| MD5 |
baa85683b0ecee7312a9ad8c9fca2a7e
|
|
| BLAKE2b-256 |
bb6d8cff75e3efae2049046c1fc13a9c7567dc10cf41f09c1a0d2371cc25c0e2
|