Scrapping de PDF con IPython y pdftotext

Pocos días después de mi análisis de datos del escrutinio provisorio en las últimas elecciones de Córdoba me llegó un correo que empezaba así:

Hola Martín, soy Franco Luque, profesor e investigador en Computación de la FaMAF. Con Jorge Sánchez, otro investigador de acá que trabaja en procesamiento de imágenes, vimos tu iniciativa, muy buena por cierto, y nos pareció muy interesante la posibilidad de procesar las imágenes de las actas para reconocer los números manuscritos. Tan interesante nos pareció que pensamos en la posibilidad de organizar una jornada de programación (lo que algunos llaman hackatón muy a nuestro pesar :P), posiblemente para sábado de la semana que viene.

Así fue que, en tiempo record, junto a Franco, Jorge, Jairo Trad, Andrés Vazquez y Marysol Farneda organizamos el evento Democracia con códigos en el que participaron 35 personas! Ese evento fue éxito en todo sentido y dio el puntapie inicial para armar el grupo Open Data Córdoba.

Abriendo datos para la democracia

Uno de los requisitos fundamentales para investigar datos es tenerlos. Si bien el sitio oficial datospublicos.gob.ar ya había publicado datasets oficiales de las elecciones, en el sitio resultados.gob.ar, donde se publicaron los telegramas en tiempo real, había más información.

En particular, hay una sección que muestra resúmemes los resultados provisorios por distrito que incluye un dato muy interesante: la hora en que fue computado cada centro de votación en el escrutinio provisorio. Lamentablemente, esa info atrapada en PDFs no es muy útil.

Si bien no alcazamos a utilizarlos en el evento (mi idea era agregar una línea de tiempo al mapa para ver cómo fue evolucionando), el dia anterior del hackatón dediqué un ratito a extraer esos datos para poder computarlos.

Lo publico ahora porque me parece útil no sólo como ejemplo de extracción de datos desde un PDF sino sobre las posibilidades de IPython Notebook (de paso, este artículo es un notebook) como entorno de "hackeo", pudiendo utilizar Python, muchísimos otros lenguajes y cualquier herramienta que tengamos en el sistema, de una manera integrada y fácil.

Leer más…

Lo siento por vos

A fines de enero, apenas volvimos de Ushuaia, en la góndola de los fideos del Vea de mi barrio decidí que iba a retomar Preciosa. Hice un aviso en la lista de correo y lo tuiteé, sin esperar mucha respuesta.

Cuando salieron las primeras aplicaciones para "Precios Cuidados", Luciano Ferrer me preguntó si eran lo mismo que lo que yo quería hacer. Le respondí que Preciosa era mucho más que eso, pero todavía tenía dudas sobre cómo concretarlo:

Tres meses después Preciosa tiene una primera versión con casi 2000 descargas, 400 usuarios activos, múltiples aparaciones en radio y TV y muchísimas ideas y ganas para seguir creciendo.

Leer más…

Nuevo análisis #NoAlFraudeEnCordoba

La repecursión que causó el análisis de datos para filtrar mesas estadísticamente sospechosas me sorprendió totalmente.

Se registraron más de 200 reportes de irregularidades a través del formulario y otros tantos en los comentarios de los articulo previos a que pusiera ese sistema de aviso.

Además, no sólo salió en los medios (para algunos con mala leche soy "kirchnerista pero democrático") , sino que Liliana Olivero se comunicó conmigo para agradecerme y preguntarme si podíamos obtener más información. Hoy me reuní con integrantes del Frente de Izquierda para hacer nuevos reportes.

Leer más…

#NoAlFraudeEnCórdoba. Ayudanos

Consejo

Hay un nuevo artículo relacionado acá

Mi nombre es Martín Gaitán y soy ingeniero en computación. Quienes me conocen saben que soy kirchnerista y fui fiscal de Carolina Scotto, pero antes de eso soy ciudadano y como tal, mi deber cívico es defender la democracia. En este caso, exigiendo un escrutinio transparente.

El domingo pasado, todas las boca de urna daban a Liliana Olivero, candidata del Frente de Izquierda y los Trabajadores (FIT), como la 9na diputada por Córdoba. Ese pronóstico se iba confirmando a lo largo del escrutinio hasta alrededor de las 23hs, cuando la tendencia empezó a cambiar en favor del tercer candidato de la UCR, Diego Mestre.

Al ser el margen tan estrecho (calculé que son menos de 1600, 0.06%) el partido de Olivero exige el recuento de los votos y la justicia electoral se niega.

Aún sin el recuento voto a voto, se han encontrado mesas con votos al FIT mal computados. Algunos ejemplos

Leer más…