Automatizado con Github Actions
Instalación
# Instala requerimientos de Python
pip3 install -r requirements.txt
# Instala dependencias de scraper de Tableau
bash setup_scraper-tableau.bash
Obtener resultados
# Obtener tablas resumen de datos abiertos
python3 scraper.py
# Obtener cifras de dashboards externos
python3 scraper-tableau.py
# Finalmente realizar commit
El programa consta de dos scripts separados:
- scraper: obtiene datos de "Datos Abiertos Perú" sobre Vacunación contra COVID-19 - MINSA.
- scraper-sinadef: obtiene datos de SINADEF sobre Fallecidos por COVID-19.
- scraper-uci: obtiene datos de SUSALUD sobre Disponibilidad de Camas UCI para pacientes COVID-19.
Genera distintas tablas de salida con sus respetivas columnas que se encuentran dentro de la carpeta resultados/
- departamentos.csv:
DEPARTAMENTO,DOSIS1,DOSIS2,DOSIS3,POBLACION,INDICE
- dosis1y2.csv:
FECHA_VACUNACION,DOSIS1,DOSIS2,DOSIS3
- acumulados1y2.csv:
FECHA_VACUNACION,DOSIS1,DOSIS2,DOSIS3
- dosis2_por_edades.csv:
GRUPO_ETARIO,DOSIS2,POBLACION,PORCENTAJE
- fecha_corte.json: fecha_corte
Dónde:
fecha_corte
: Fecha hasta la cuál se ha realizado el conteo.DEPARTAMENTO
: Subregión del país, nivel 2.DOSIS1
: Cantidad de vacunas aplicadas en unDEPARTAMENTO
específico, hasta laFECHA_CORTE
DOSIS2
: Cantidad de vacunas aplicadas en unDEPARTAMENTO
específico, hasta laFECHA_CORTE
DOSIS3
: Cantidad de vacunas aplicadas en unDEPARTAMENTO
específico, hasta laFECHA_CORTE
FECHA_VACUNACION
: Fecha de vacunación de la dosis.
POBLACION
: Población por departamento según el "Estado de la población peruana 2020" - INEIINDICE
: Índice de vacunación por 100 000 hab para las dosis = (DOSIS
/(POBLACION
/100000))
Este scraper simula abrir una ventana de Chrome con la librería selenium
y obtiene una captura de pantalla. Luego, se extrae el texto de la imagen con tesseract
y guarda los números en el archivo ambas_dosis.json
Este scraper obtiene la cantidad de camas uci por departamentos y las guarda en resultados/camas_uci.csv