Guías para usuarios y desarrolladores

Actualización automática de datos dependiendo de su publicación en el portal

Actualización automática de datos dependiendo de su publicación en el portal

El Portal de Datos Abiertos del Cabildo de Tenerife permite consultar o descargar los conjuntos de datos más recientes de manera automática o manual.

Para disponer de un histórico actualizado debemos seguir una serie de pasos. Dependiendo de cómo se actualizan los datos en el portal, podemos distinguir tres casuísticas:

 

1. Mismo conjunto de datos y mismo recurso

De los tres casos a contemplar este es el más directo, ya que solo depende de una URL. Una vez localizado el recurso del conjunto de datos, podemos utilizar la herramienta que prefiramos para que obtenga los datos a través de la URL del recurso. Para obtener dicha URL podemos utilizar dos métodos.

El primer método, y el más sencillo, consiste en dar con el botón derecho del ratón sobre el botón de descarga del recurso y seleccionar la opción Copiar dirección de enlace.

Por ejemplo, este caso es el del conjunto de datos “Afluencia a Barranco de Masca”. Este conjun

to tiene el recurso “Afluencia de acceso al Barranco de Masca por edad” donde se van registrando el número de personas que ha accedido al Barranco.

Cap1_Datos_Abiertos_Afluencia a Barranco de Masca

Realizando los pasos anteriores, copiaríamos su URL que es:

https://datos.tenerife.es/ckan/dataset/8dee8e4a-5522-4140-827c-cfe3a6a90c39/resource/aff68a0c-0838-4557-a9b2-10003b782b1a/download/afluencia-de-acceso-al-barranco-de-masca-por-edad.csv

Si esta URL la utilizamos directamente en el navegador descargaríamos el recurso y, por ejemplo, también la podríamos utilizar como origen de datos en un informe de Power BI para que al actualizarlo recupere siempre los últimos datos disponibles.

En este ejemplo hemos seleccionado el formato CSV, pero podríamos hacer lo mismo con cualquier otro tipo de formato.

El segundo método para obtener el enlace necesario para la descarga es mediante la API del portal, que se encuentra en el bloque de Datos.

Cap2_API_Portal de Datos Abiertos

De todos los endpoints que aparecen utilizamos “package_search” del apartado “Conjuntos de datos”. Este endpoint busca los conjuntos de datos que satisfagan la búsqueda y muestra en formato JSON los metadatos asociados al conjunto de datos, junto con los recursos de los que dispone. Después de pulsar el botón de “Try it out”, indicaremos el nombre del conjunto de datos a buscar “Afluencia a Barranco de Masca” en el parámetro “q” y le daremos al botón “Execute”.

Cap3_Afluencia_Barranco de Masca

En primer lugar, además de comprobar que no ha habido errores (código 200), podemos ver cuántos conjuntos de datos satisfacen nuestra búsqueda, en este caso 1.

Cap4_Errores 200

Según vamos bajando por el resultado podemos ver los diferentes metadatos del conjunto, por ejemplo, su título (title) o la descripción (notes) entre otros.

Cap5_Metadatos del conjunto

Si seguimos bajando por el JSON encontraremos un array ("resources": [ ]) con todos los recursos de los que dispone dicho conjunto de datos. Para una mejor visualización o utilización se permite la descarga de dicho JSON.

A continuación, debemos buscar el valor asociado a la etiqueta “url” del recurso que tenga como metadatos:

  • "name": "Afluencia de acceso al Barranco de Masca por edad"
  • "format": "CSV".

Cap6_recursosde los que dispone el conjunto

A continuación, debemos buscar el valor asociado a la etiqueta “url” del recurso que tenga como metadatos:

  • "name": "Afluencia de acceso al Barranco de Masca por edad"
  • "format": "CSV".

 

Y de esa forma obtenemos la misma URL para el recurso que la que obteníamos con el primer método. Con este segundo método podríamos averiguar en una única llamada a la API las URL de varios recursos a la vez, si fuera necesario.

 

2. Mismo conjunto de datos y distintos recursos

Si en el caso anterior dependíamos de una única URL y el proceso de obtención podía hacerse de forma manual (debido a que solo se actualiza un recurso), en este caso, es interesante un proceso de automatización que obtenga todos los recursos necesarios para conformar un histórico.

Por ejemplo, en el conjunto de datos “Reservas de actividades en la naturaleza en Tenerife” los recursos se dividen por años, mostrando la cantidad de personas que realizan una actividad en una fecha determinada, por lo que deberíamos obtener todas las URL de los recursos (escogiendo el formato deseado) desde el primer año para el que existen datos, 2016.

Cap7_Reservas de actividades en la naturaleza en Tenerife

Para el proceso de automatización debemos repetir los pasos indicados anteriormente:

  • Utilizar el endpoint “package_search” del apartado “Conjuntos de datos”, en la API del portal que encontramos en el bloque de Datos.
  • En el parámetro “q” indicar el nombre exacto del conjunto de datos a buscar, entrecomillado (es decir, "Reservas de actividades en la naturaleza en Tenerife") o una o más palabras para realizar la búsqueda (por ejemplo, Reservas actividades naturaleza).
  • Verificar que obtenemos resultados y, si hay más de uno quedarnos con aquel array de resultados cuyo title coincida con el nombre del conjunto de datos.

Cap8_package_search

  • Por último, del array de resources nos quedamos con aquellas URL para las cuales los metadatos de format sean “CSV” y name contenga “Reserva de actividades".

cAP9F5

De esta forma, en el momento que se publiquen los datos con las reservas de 2025 podremos recoger también automáticamente la URL del nuevo recurso mediante este proceso, para así poder descargar los datos.

En este caso también podríamos ir copiando las URL manualmente, porque, al fin y al cabo, los recursos están en un mismo conjunto de datos y, simplemente tendríamos que pulsar con el botón derecho del ratón para obtener el enlace. Eso sí, tendríamos que recordar anualmente acceder al conjunto de datos para copiar la URL del nuevo recurso actualizado.

 

3. Distintos conjuntos de datos

En este caso tenemos distintos conjuntos de datos, pero que tienen la “misma” relación de recursos. Para este caso, no sólo vuelve a ser interesante la automatización, sino también recomendable. Por ejemplo, si estamos interesados en analizar los datos meteorológicos diarios de todas las estaciones de Tenerife, el portal cuenta actualmente con datos para 62 estaciones, cada una de ellas cuenta con recursos anuales hasta 2024, tanto en formato CSV como JSON. Esto supone cientos de recursos, de los cuáles habría que recoger la URL y cada año se incorporan más.

Conjuntos de datos

Los pasos a realizar en este caso son los mismos que en el caso anterior, con la salvedad de que el parámetro “q” debe contener un valor genérico, por ejemplo, “Datos meteorológicos diarios” (recordar ponerlo entrecomillado).

Este endpoint está limitado a 10 resultados o conjuntos de datos, por lo que hay que lanzar dicho endpoint modificando el parámetro rows para que nos devuelva más conjuntos.

Portal de datos abiertos

 Dado que el número de resultados esperado es 62, podemos indicar en rows, por ejemplo,100. Ya que swagger se utiliza como documentación de la API y el JSON a recuperar es bastante extenso, lo que puede ocasionar problemas de carga en la página del portal, es recomendable lanzar la consulta directamente en otra pestaña del navegador. La URL para ejecutar sería: 

https://datos.tenerife.es/ckan/api/3/action/package_search?q=%22Datos%20meteorol%C3%B3gicos%20diarios%22&rows=100 

Igual que hicimos en el caso anterior filtraríamos las URL de los recursos cuyo name contenga "Datos meteorológicos diarios” y format sea “CSV”. 

Para más información de cómo usar la API del portal de datos abiertos del Cabildo se puede consultar el artículo “API del Portal de Datos Abiertos: consumo de datos de forma automatizada”. Además, está disponible el vídeo sobre cómo utilizar la API del portal de Datos Abiertos.

Fondo Europeo de Desarrollo Regional (FEDER)
“Una manera de hacer Europa”

Guardar
Cookies preferencias usuario
Utilizamos cookies para garantizarle la mejor experiencia en nuestro sitio web. Si rechaza el uso de cookies, es posible que este sitio web no funcione como se espera.
Aceptar todo
Rechazar todo
Leer más
Esencial
Estas cookies son necesarias para que el sitio web funcione correctamente. No se pueden desactivar.
Técnicas
Aceptar
Analítica
Herramientas utilizadas para analizar los datos para medir la eficacia de un sitio web y entender cómo funciona.
Google Analytics
Aceptar
Rechazar