"""
4.1. Clases principal de la biblioteca `SSI`
============================================
En esta sección, se construye una clase general que hereda los métodos de las clases específicas
para cada sección del portal (Formato8, lista de ejecución y el SSI).
"""
from .form_eight.eight import ScrapingEight
from .lista_ejecucion.lista_ejecucion_simple import ScrapingListaEjecucion
from .ssi.main_ssi import ScrapingMainSSI
[documentos]
class SSI(ScrapingEight, ScrapingListaEjecucion, ScrapingMainSSI):
"""Con esta clase unimos los métodos principales de las clases específicas para cada
seccion del SSI.
Args:
ScrapingEight (string): tiene los atributos file_read, num_range, path_export, file_type, year.
ScrapingListaEjecucion (string): tiene los atributos file_read, num_range, path_export, file_type, year.
ScrapingMainSSI (string): tiene los atributos file_read, num_range, path_export, file_type, year.
"""
def __init__(self, file_read, num_range, path_export, file_type, year):
ScrapingEight.__init__(self, file_read, num_range, path_export, file_type, year)
ScrapingListaEjecucion.__init__(
self, file_read, num_range, path_export, file_type, year
)
ScrapingMainSSI.__init__(
self, file_read, num_range, path_export, file_type, year
)
[documentos]
def list_ejecucion(self):
"""Método que descarga los datos de la sección Lista de Ejecución del SSI.
Returns:
xlsx: Genera un archivo xlsx con los datos almacenados de la lista
"""
return ScrapingListaEjecucion(
self.file_read, self.num_range, self.path_export, self.file_type, self.year
).download_data()
[documentos]
def main_ssi(self):
"""Método que descarga los datos de la sección principal del SSI.
Returns:
xlsx: Genera un archivc xlsx con los datos almacenados de la sección principal
"""
return ScrapingMainSSI(
self.file_read, self.num_range, self.path_export, self.file_type, self.year
).download_data()