codeandomexico / los-scrapers Goto Github PK
View Code? Open in Web Editor NEWRecopilación de web scrapers para mejorar al gobierno (A collection of web-scrapers to extract government data)
Recopilación de web scrapers para mejorar al gobierno (A collection of web-scrapers to extract government data)
Los Scrapers es una recopilación de web scrapers para hacer accesibles datos públicos de México.
A partir de Abril 2014 cambiaremos la estructura del proyecto por propuesta de @lalo:
Nuevas ideas para agregar al README como siempre bienvenidas!
En el PR #18 se propuso el uso de la licencia MIT para el proyecto INEGIParser
, dicha propuesta fue denegada para un análisis más profundo en un hilo separado.
Para dicho análisis quisiera que se tome en cuenta lo siguiente:
Podríamos hacer un API out-of-the-box con http://datahub.io/ al subir en formato CSV o JSON los datos extraídos por los scrapers
Hace unos meses agregué esa funcionalidad a la gema CKAN ruby https://github.com/apohllo/CKAN
Podría ser una manera rápida de tener un API
Sería deseable poder contar con los scripts setup.py
y setup.cfg
usados en los proyectos basados en Python para distribuir las aplicaciones. Con esto finalmente sería posible publicar el proyecto en PyPI (Python Package Index).
Hasta ahora el script brinda soporte a MongoDB (NoSQL) y PostgreSQL (SQL), lo cual puede ser suficiente. Sin embargo, sería deseable establecer un ORM como capa intermedia (SQLAlchemy por ejemplo) que dependiendo de la configuración indicada por el usuario puede trabajar con conectores hacia:
Por nombrar algunas, con SQLAlchemy podríamos crear al vuelo por ejemplo las tablas de la bases de datos y controlar la inserción de datos por medio de invocaciones más orientadas a objetos y no incluir tantas sentencias SQL en el código Python.
Mejorar el análisis de las opciones pasadas por línea de comandos, recomendaría el uso de argparse
para ello, a la vez, el manejo de las opciones centralizarlas en un archivo de configuración. Además, cada comando debe mostrar en caso de error en parámetros una ayuda al usuario.
Parece que el INEGI ha cambiado el formato de los archivos que entregaban, anteriormente entregaba los siguientes ficheros:
XX_ENTIDAD_Fuente.tsv
XX_ENTIDAD_Notas.tsv
XX_ENTIDAD_UnidadMedida.tsv
XX_ENTIDAD_Valor.tsv
Si se descargan los ficheros ahora se puede observar lo siguiente:
XX_ENTIDAD_Notas.tsv
XX_ENTIDAD_Valor.tsv
XX_ENTIDAD_NotasxValor.tsv
Por lo que la funcionalidad de los scripts debe ser actualizada, ya me encuentro trabajando en esto.
Idea de UI http://www.chicagolobbyists.org/
La lista de scrapers debe de estar en un formato más accesible, de preferencia un yml o json.
El esquema para este formato sera definido depende de como va creciendo este repo.
Estaría cool hacer algo de scraping del Diario Oficial de la Federación, porque es una fuente de datos muy valiosa pero en formatos no abiertos.
Tener un newsfeed de lo que se publica oficialmente ahí, con alertas sobre licitaciones o algún otro elemento de nuestro interés. Por lo menos un re-diseño a la información no le caería nada mal.
Por un momento pensé que tenían resuelto eso con su RSS, pero al parecer está roto http://dof.gob.mx/sumario.xml
Estaría bueno hacer un scraper y exponer todo vía un API REST para bajar estos anuncios del DOF.
Deberíamos de armar un bot que detecte gastos excesivos a través de IFAI, como el caso de PEMEX y el bat de béisbol de $415,000
La interfaz de Compranet es inútil, pero los datos nos pueden servir bastante:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.