Aniversario Perú Martes, 24 febrero 2015

«Manolo, el buscador de lobistas» abre sus datos

Aniversario Perú

soy Biólogo, PhD. Hobbies: investigador en usos de las TIC, periodismo de datos, nerd, etc.

Ustedes ya conocen a «Manolo, buscador de lobistas«, quien ha servido –entre muchas otras cosas– para encontrar numerosas visitas de alias Chocherín, «financista de Ollanta Humala y socio del prófugo Martín Belaunde Lossio», a personal que trabajaba en Palacio de Gobierno:

Manolo es un bot que visita los portales de transparencia de las instituciones peruanas, descarga los registros de visitas que están obligados a tener por ley, y los acumula en una base de datos para que estén disponibles a través de un buscador amigable al público en general.

He notado que medios de prensa escrita han utilizado «Manolo» para obtener información y armar muchas notas periodísticas. ¡Y está bien! Por esa razón Manolo es de libre uso. A veces citaron a Manolo y a mí como «fuentes» y a veces no. Pero no importa, no me molesto, tanto.

Estos medios han usado «Manolo» sin pagarme un solo céntimo. ¡Pero no importa! No pretendo cobrar ni una mandarina a los usuarios de «Manolo». Todo lo he financiado de mi bolsillo.

Screen Shot 2015-02-24 at 10.47.24

 

Tengo algunas ideas para implementar en «Manolo» pero el factor limitante era el servidor tan pequeño donde lo tenía alojado (con solo 512Mb de RAM). Es por eso que hace poco hice un llamado en Twitter para donaciones al proyecto «Manolo» para pagar algunos gastos, y qué creen… mis llamados fueron escuchados.

El amixer Gustavo Beathyate, @goddamnhippie, vino al rescate y donó un potente servidor virtual en Joyent con crédito para 2 años! Entonces he podido implementar una mejor base de datos (PostgreSQL) con datos totalmente indexados (usando elasticsearch). Por eso, ahora «Manolo» es tan rápido para devolver resultados de búsqueda.

 

Datos abiertos

Si bien «Manolo» ofrece datos que son entendibles a humanos, es necesario que los datos también estén disponibles en un formato que sea entendible a computadoras. Todo portal de datos abiertos que se respete debe tener esta capacidad.

Por eso me complace en anunciar que la versión 2.4.0 de «Manolo» ahora tiene un API donde se describe la manera en que puedes obtener los datos en formato TSV y/o JSON. Esto te permitirá procesar rápidamente la información para que puedas hacer cálculos estadísticos, gráficos, etc.

 

Formato TSV

Si quieres obtener los datos listos para importar a Excel puedes descargarlos en formato TSV (con las columnas separadas por Tabs). Solo es cuestión de agregar &tsv a los resultados de búsqueda.

1. GET http://manolo.rocks/search/?q=ROMULO&tsv

Devuelve hasta 20 resultados al buscar visitas con la palabra ROMULO en formato TSV, listos para importar a MS Excel:

Datos en formato TSV pueden ser leídos en Excel

Datos en formato TSV pueden ser leídos en Excel

2. También puedes hacer click sobre los íconos TSV y JSON en la página de resultados de búsqueda.

Cualquier resultado de búsqueda pueder ser exportado a TSV y/o JSON

Cualquier resultado de búsqueda pueder ser exportado a TSV y/o JSON

Formato JSON

Se acostumbra usar el formato JSON el cual puede ser importado por herramientas como OpenRefine para hacer limpieza y normalización de datos. Luego es posible exportar los datos desde OpenRefine a otros formatos como CSV, TSV, MS Excel, etc. Solo es cuestión de agregar &json a los resultados de búsqueda.

3. GET http://manolo.rocks/search/?q=ROMULO&json

Devuelve hasta 20 resultados al buscar visitas con la palabra ROMULO en formato JSON:

[
    {
        "id": 439724,
        "sha1": "f33806f07941011109c822ba4e04caaf71c35a9d",
        "full_name": "Romulo Edmundo Martinez Talledo",
        "entity": "COMPANIA CONSTRUCTORA ATLAS",
        "meeting_place": "Sala Visitas Piso 3",
        "office": "[Sub Director de Informacion Registral]",
        "host_name": "Fernando Francisco Palomino Peralta",
        "reason": "REUNION DE TRABAJO",
        "institution": "osce",
        "location": "",
        "id_number": "07843241",
        "id_document": "DNI",
        "date": "2014-07-16",
        "time_start": "10:24",
        "time_end": "10:33"
    },
    {
        "id": 186560,
        "sha1": "6a181af4414d6c6040901d6a8ec3a21ff4fe842c",
        "full_name": "ROMULO CARGUAS MARCELO",
        "entity": "SEDAPAL",
        "meeting_place": "Sala Sipan",
        "office": "[Especialista Legal]",
        "host_name": "Natalia Modali Berrocal Gonzalez",
        "reason": "REUNION DE TRABAJO",
        "institution": "osce",
        "location": "",
        "id_number": "04016558",
        "id_document": "DNI",
        "date": "2014-03-27",
        "time_start": "14:36",
        "time_end": "16:49"
    }
]

4. GET http://manolo.rocks/search/?q=ARBITRO&page=2&json

Devuelve siguientes 20 resultados (del 21 al 40) al buscar visitas con la palabra ARBITRO en formato JSON. Puedes ir incrementando el número de página para poder descargar todos los resultados. La próxima versión del rest_framework (3.1) incluirá mejores herramientas para incluir el campo «next» en los resultados.

Ahora puedes disfrutar de lo lindo descargando datos de «Manolo» en formato JSON y TSV. Es más, con unas cuantas líneas de código de programación puedes descargar los más de 700mil registros que tiene Manolo.

Y como siempre todo el código fuente de Manolo es OpenSource y puede ser descargado de aquí: https://github.com/aniversarioperu/django-manolo. Todo gratis, la única condición es que seas lector del blog útero.pe.

Aniversario Perú

soy Biólogo, PhD. Hobbies: investigador en usos de las TIC, periodismo de datos, nerd, etc.