Giter Club home page Giter Club logo

hackathon-flisol2017's Introduction

Hackaton FliSol Tandil 2017

Cómo parte del FliSol Tandil 2017, se realizó un hackaton de datos abiertos. La temática que elegimos fue datos públicos de licitaciones y compras realizadas por el Municipio de Tandil.

En Mayo de 2017 se realizó un hackaton adicional donde continuamos con el trabajo arrancado en el FliSol Tandil 2017.

Flyer

Objetivos

Los objetivos que se plantearon durante el hackaton fueron:

  • Poder extraer la información publicada por el Municipio de Tandil acerca de licitaciones y compras realizadas, de forma de disponerlas en un formato fácil de manipular para su posterior análisis. Se decidió que contar con la información en formato json o csv era suficiente en una primer instancia.

  • Analizar las relaciones entre los datos e identificar posibles visualizaciónes o agrupación de datos que permitan mejorar el entendimiento sobre las licitaciones y compras realizadas por el Municipio de Tandil.

  • Identificar oportunidades de mejora con respecto a la información publicada, su formato, relaciones, etc.

  • Aprender y compartir un rato colaborando en un proyecto conjunto.

Fuente de datos

Partimos de la información publicada en el sitio del Municipio de Tandil, bajo la sección Documentos de Interes - Compras y Suministros:

Scrapping

Durante el hackaton comenzamos a codear un scrapper en python para hacer la extracción de los datos.

Requerimientos

Las librerias necesarias se pueden instalar usando pip:

pip install -r requirements.txt

Es recomendado instalar las dependencias y correr el proyecto en un virtualenv para evitar conflictos con los paquetes python del sistema. Un tutorial se puede encontrar en el siguiente link.

Análisis

Adjudicatarios

Ideas

Cargamos ideas para mas visualizaciones y analisis del set de datos en los issues del repositorio.

hackathon-flisol2017's People

Contributors

almanuel avatar martingalloar avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

almanuel augustol

hackathon-flisol2017's Issues

Implement dynamic cookie handling.

Para algunos POST requests se necesita de una cookie válida. Si bien ya está implementada y comentada la parte en la que se hace primero un request para obtener una cookie válida, en los casos de test no la tomaba como tal.

Capaz que ahora con sólo descomentarlo ya estaría andando, porque no tiene más ciencia que el código siguiente:
r = requests.get("%s%s" % (URL_REQ_A, URL_CONTEXT[self.context]), headers=HEADERS) self.cookie = r.headers['Set-Cookie'].split(';')[0],

Se hace un get clásico, donde se recibe el header Set-Cookie, y simulando a un navegador, para los próximos requests se utiliza en el header Cookie el valor obtenido en el primer request, no tiene mucha ciencia. Pero por algo no me las tomaba como válidas.

Por el momento se puede poner el valor manualmente y no hay problema. Incluso las cookies duran bastante.

Serie temporal de adjudicaciones

Mostrar adjudicaciones a lo largo del tiempo, tanto generales como para un proveedor o un conjunto de proveedores en particular.

Clasificar items en categorias

Utilizar palabras clave de las descripciones para ubicar las licitaciones en una serie de categorías.

Ejemplos:

  • por tipo: materiales, obras, equipamiento, etc.
  • por sector: vialidad, administración, vivienda, etc.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.