Skip to content

La idea de este correo es hacer una búsqueda de sismos en el link de catálogo sísmico del SGC. Descargar los archivos xlsx,kml y png que arroja la busqueda. Luego de eso se envía un correo a los respectivos destinatarios indicados.

Notifications You must be signed in to change notification settings

SGC-analistas/Reporte_sismicidad

Repository files navigation

SGC

Reporte de sismicidad

Rutina realizada para enviar reportes de sismicidad. Esta basado en web scraping.

La rutina funciona para las fechas donde funciona seiscomp y únicamente si el siguiente link funciona bien: SGC-Catalogo

1. Instalación en linux

Requerimientos previos

Se corre en sistemas linux.

- Servidor SMTP

Tener un servidor SMTP (Simple Mail Transfer Protocol) el cual es un protocolo básico que permite que los emails viajen a través de Internet.

- Python

Python Versión 3.7 en adelante. (Usaremos como ejemplo python 3.8)

Tener virtualenv en python.

sudo apt-get install python3.8
sudo apt-get install python3.8-venv

Instalación con pip

python3.8 -m venv .reporte
source .reporte/bin/activate
pip install -r requirements.txt

IMPORTANTE

ESCRIBIR LO SIGUIENTE

nano /opt/rutinas/.reporte/lib/python3.7/site-packages/openpyxl/styles/colors.py 

Comentar las siguientes lineas dentro de la Clase RGB con un '#':

#if m is None:
  #raise ValueError("Colors must be aRGB hex values")

2. Comandos

Al digitar

 python reporte.py +h

Pueden obaservar la siguiente ayuda:

  +h, ++help            Ayuda
  +g , ++guardado       True para coger una busqueda guardada. Se envia tal y como estaba guardado.
  +n , ++nombre         Nombre del lugar (sin espacios) donde se guardo el reporte.
  +a , ++asunto         Asunto del correo
  +fi , ++fecha_ini     [tres opciones] 1) Fecha de busqueda en el catalogo [YYYYmmdd]. 2) Inicial del día, toma el día más cercano. W -> miercoles.3) 'hoy' toma la fecha de hoy
  +ff , ++fecha_fin     [tres opciones] 1) Fecha de busqueda en el catalogo [YYYYmmdd]. 2) Inicial del día, toma el día más cercano. W -> miercoles.3) 'hoy' toma la fecha de hoy
  +t , ++type           [radial o cuadrante]. Para radial: ++lat_central, ++lon_central, ++radio. Para cuadrante: ++lat_min,++lon_min,++lat_max,++lon_max
  +l , ++link           link directo de busqueda. (A veces el grupo de sistemas envia un link donde los paramateros ya estan definidos. )Se debe definir ++type según sea el tipo de busqueda.
  +e , ++editar         True para editar cosas generales del cuerpo del mensaje.NO ELIMINE NI AGREGUE %s. Sirve para agregar o quitar datos adicionales a la plantilla.
  +c , ++comprobar      True para comprobar el cuerpo del mensaje.
  +ig , ++info_guardado  True para ver los que estan guardados.
  +nav , ++navegador    True para abrir navegador
  +magm , ++mag_min     Magnitud minima.
  +magM , ++mag_max     Magnitud maxima.
  +profm , ++prof_min   Profundidad minima.
  +profM , ++prof_max   Profundidad maxima.
  +rmsm , ++rms_min     rms minimo.
  +rmsM , ++rms_max     rms maxima.
  +gapm , ++gap_min     gap minimo.
  +gapM , ++gap_max     gap maxima.
  +eprofm , ++eprof_min Error minimo en profundidad.
  +eprofM , ++eprof_max Error maximo en profundidad.
  +elonm , ++elon_min   Error minimo en longitud.
  +elonM , ++elon_max   Error maximo en longitud.
  +elatm , ++elat_min   Error minimo en latitud.
  +elatM , ++elat_max   Error maximo en latitud.
  +d  [ ...], ++destinatarios  [ ...] Lista de correos a quienes se les va a enviar el reporte. Ejemplo: '[email protected]' '[email protected]'
  +gg , ++guardar       True para guardar la busqueda
  +latc , ++lat_central Latitud central para tipo radial.
  +lonc , ++lon_central Longitud central para tipo radial.
  +r , ++radio          Radio para tipo radial.
  +latm , ++lat_min     Latitud minima para tipo cuadrante.
  +latM , ++lat_max     Latitud maxima para tipo cuadrante.
  +lonm , ++lon_min     Longitud minima para tipo cuadrante.
  +lonM , ++lon_max     Longitud maxima para tipo cuadrante.

2. Instrucciones de uso

1. Crear consulta

cuadrante

  1. Puerto Gaitán
python reporte.py +g false +n puerto_gaitan +a "Reporte de sismicidad alrededor del municipio de Puerto Gaitan" +d [email protected] [email protected] [email protected] [email protected] [email protected] [email protected]  +fi V +ff hoy +t cuadrante +latm 3.42 +latM 4.41 +lonm -72.15 +lonM -70.84 +e True +c True

radial

python reporte.py +g false +n quetame +a "Reporte radial" +d [email protected] [email protected] [email protected] [email protected] [email protected] [email protected]  +fi V +ff hoy +t radial+latc 4.33 +lonc -73.86 +r 1004 +e True +c True

link

A veces el grupo de sistemas generan el link directo de busqueda.

  1. Quetame:
python reporte.py +g false +gg true +n quetame +a "Reporte de sismicidad alrededor del municipio de Quetame" +d [email protected] [email protected] +fi V +ff hoy +t radial +l http://bdrsnc.sgc.gov.co/paginas1/catalogo/Consulta_Quetame/consultaexperta.php +latc 4.33 +lonc -73.86 +r 100 +e True +c True

2. Enviar consulta

Una vez el reporte haya sido guardado, el resto de veces se puede enviar del siguiente modo:

python reporte.py +n quetame

Autor

About

La idea de este correo es hacer una búsqueda de sismos en el link de catálogo sísmico del SGC. Descargar los archivos xlsx,kml y png que arroja la busqueda. Luego de eso se envía un correo a los respectivos destinatarios indicados.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published