Skip to main content

SIU Harvest

Project description

Build Status Docker Pulls Docker Automated

SIU Harvester

Esta extensión de CKAN permite cosechar (harvest) datos expuestos en sistemas SIU.
El Sistema de Información Universitaria es un conjunto de aplicaciones que permite de manera gratuita a las Universidades argentinas contar con las herramientas de software para su gestión integral.

Esta extensión de CKAN esta pensada para obtener estos datos y publicarlos en formatos reutilizables para darles mayor accesibilidad al público general.

Portal de transparencia

SIU incluye un portal de transparencia que incluye un API.
Estos datos se toman de la base SIU-Wichi, que contiene datos provenientes de los módulos SIU-Pilaga (Presupuesto), SIU-Mapuche (RRHH), SIU-Diaguita (Compras y Patrimonio) y SIU-Araucano (Académicos).

Consultas

Las consultas a la base de datose se definen en archivos CDA

<?xml version="1.0" encoding="UTF-8"?>
<CDADescriptor>
   <DataSources>
      <Connection id="myconnection" type="sql.jndi">
         <Jndi>transparencia</Jndi>
      </Connection>
   </DataSources>

   <DataAccess 
       access="public" 
       cache="true" 
       cacheDuration="7200" 
       connection="myconnection" 
       id="IdParaUsarComDataAccessID" 
       type="sql">
      <Columns/>

      <Parameter name="prm_anio" type="Numeric" default="0"/>
      
      <Query>SELECT field_a, field_b, field_c 
                      FROM xtable
                      where field_a = ${anio}
      </Query>

   </DataAccess>
</CDADescriptor>

Este harvester lee los enpoints del API que expone cada archivo CDA. Los archivos CDA incluidos en el Portal de Transparencia ya están cubiertos en este harvester. Esta listo para consumir y republicar datos.

Es posible tambien definir archivos CDA personalizados y agregarlos al harvester para consumir estos datos de manera automtizada y periódicamente.

Instalación

Disponible en Pypi o vía GitHub.

pip install ckanext-siu-harvester
ó
pip install -e git+https://github.com/avdata99/ckanext-siu-harvester.git#egg=ckanext-siu-harvester

+
pip install -r https://raw.githubusercontent.com/avdata99/ckanext-siu-harvester/master/requirements.txt

Agregar origen

La URL los harvest sources de este tipo son de la forma:

http://wichi.siu.edu.ar/pentaho/plugin/cda/api/doQuery

Debe elegir la URL de la instancia de la que desea obtener datos

Configuración

Para conectarse es requisito que para cada harvest source definir una configuración.
Ejemplo:

{
    "username": "user",
    "password": "password"    
}

Datos a extraer

Estos endpoints pueden incluir multiples recursos. Cada recurso es un query al endpoint ya listo para usar.
Estos ya están configurados en el directorio queries de la librería siu-data

Por ejemplo egresados-pos-facultad.json

{
    "name": "evolucion-de-cargos-activos-por-escalafon",
    "title": "Evolución de cargos activos por escalafón",
    "notes": "",
    "internals": "Describir mejor",
    "iterables": {
        "sub_list": {
            "help": "Necesitamos primero obtener la lista de unidades académicas con otra consulta",
            "name": "lista-de-unidades-academicas",
            "params": {
                "paramprm_tablero_visible": "18",
                "dataAccessId": "param_ua_cargos",
                "sortBy": ""
            },
            "apply_to": "paramprm_ua_cargos"
        }
    },
    "tags": [
        "Cargos", "Personal"
    ],
    "params": {
        "paramprm_ua_cargos": "",
        "path": "/home/SIU-Wichi/Portal Transparencia/cda/4_rrhh.cda",
        "dataAccessId": "tablero_18",
        "outputIndexId": 1,
        "pageSize": 0,
        "pageStart": 0,
        "sortBy": "2D"
        }
}

De esta forma este harvester va a iterar por los años disponibles y creará un dataset para cada año.
Es posible agregar más queries para consumir más datos.

Tests

Locally

docker-compose \
    -f docker-compose.yml \
    -f docker-compose-dev.yml \
    exec ckan bash -c \
    "cd src_extensions/ckanext-siu-harvester && \
        nosetests --ckan --nologcapture --with-pylons=test.ini ckanext/siu_harvester/tests"

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ckanext-siu-harvester-0.2.75.tar.gz (25.1 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page