diff --git a/app.py b/app.py index fe7b619..3bd0627 100644 --- a/app.py +++ b/app.py @@ -156,15 +156,19 @@ def extract(driver, username: str, password: str): # Obtener el HTML de las materias materias_html = driver.find_element(By.ID, 'ctl00_contenedor_HistorialAlumno1_divHAcademico').get_attribute('innerHTML') historial_html = driver.find_element(By.ID, 'ctl00_contenedor_HistorialAlumno1_gvMaterias').get_attribute('innerHTML') - materias_actuales_html = driver.find_element(By.ID, 'ctl00_contenedor_HistorialAlumno1_gvMatOrdinario').get_attribute('innerHTML') - + + # Materias actuales + try: + materias_actuales_html = driver.find_element(By.ID, 'ctl00_contenedor_HistorialAlumno1_gvMatOrdinario').get_attribute('innerHTML') + materias_html_io = StringIO(f"{materias_actuales_html}
") + df_materias = pd.read_html(materias_html_io)[0] + df_materias = df_materias.drop(columns=['Unnamed: 0', 'Seleccionar'], errors='ignore') + except NoSuchElementException: + df_materias = pd.DataFrame() + # Manejar el historial como DataFrame historial_html_io = StringIO(f"{historial_html}
") - materias_html_io = StringIO(f"{materias_actuales_html}
") df = pd.read_html(historial_html_io)[0] - df_materias = pd.read_html(materias_html_io)[0] - - df_materias = df_materias.drop(columns=['Unnamed: 0', 'Seleccionar']) json_result = None json_materias = None