Asistente de estudio: detecta tareas pendientes con Selenium y redacta borradores con IA local para revisar
Bot-IA automatiza la parte mecánica de estudiar: entra en el portal educativo con Selenium, detecta qué tareas están pendientes, lee el enunciado de cada una y redacta un borrador de respuesta con un modelo de lenguaje local vía Ollama. El borrador se guarda en Markdown.
La clave del diseño es lo que no hace por defecto. La configuración
viene con MODO_ESTUDIO_SEGURO = True y AUTO_ENVIAR =
False: el bot genera el borrador y ahí se detiene. Cada fichero de respuesta
incluye una lista de comprobación de revisión manual que hay que
recorrer antes de entregar nada.
Para que el borrador sea utilizable, el bot no escribe en el vacío: se le proporciona un fichero Markdown de resúmenes por asignatura con el estilo y el contenido que debe seguir. Sin ese contexto la respuesta es genérica; con él, se parece a los apuntes de la asignatura.
Script principal con el menú interactivo de cuatro opciones.
Toda la configuración: acceso, carpetas, modelo de Ollama, banderas de seguridad y selectores del DOM.
Un fichero Markdown por asignatura con el contexto y el estilo que debe seguir el bot.
Los borradores generados, uno por actividad.
Pruebas básicas del proyecto.
Recorre las tareas pendientes y genera los borradores.
Cierre del programa.
Verifica que el servicio y el modelo estén disponibles antes de intentar generar.
Muestra cuántas tareas hay por asignatura, sin generar nada.
Proyecto pequeño y muy configurable. Toda la fragilidad del scraping está aislada en
config.py, en forma de selectores del DOM y expresiones XPath: si el
portal cambia su estructura, se arregla editando la configuración en lugar de
tocando el código.
Bot-IA/ └── V0.1-inicio/ ├── main.py # menú y flujo principal ├── config.py # configuración completa ├── requirements.txt ├── resumenes/ # contexto por asignatura (.md) ├── respuestas/ # borradores generados └── tests/
Navegación automatizada del portal educativo. Puede ejecutarse en modo headless o con la ventana visible para depurar.
Generación del borrador con un modelo local — qwen2.5-coder:3b
por defecto — sin enviar los enunciados a ningún servicio externo.
OLLAMA_MODO_PRUEBA permite ejecutar todo el flujo sin generación
real, para probar la navegación sin gastar cómputo.
MODO_ESTUDIO_SEGURO esté activo y AUTO_ENVIAR
desactivado.## Enunciado con el texto original de la tarea.## Respuesta con el borrador generado.
Un bot que entrega tareas automáticamente es un problema académico, no un proyecto.
Las banderas por defecto — MODO_ESTUDIO_SEGURO = True y
AUTO_ENVIAR = False — y la lista de comprobación en cada borrador están
ahí para que el camino fácil sea el correcto. El README lo dice de forma explícita:
la responsabilidad del contenido es de quien entrega.
Sin los resúmenes por asignatura, el modelo produce texto genérico que no sirve. Alimentarle un Markdown con el estilo y el contenido de la materia es lo que convierte la salida en un punto de partida real. La calidad del borrador depende más del contexto que del tamaño del modelo.
Cualquier automatización sobre una web ajena se rompe cuando esa web cambia. Todos
los selectores CSS y XPath están en config.py, con su sección de
solución de problemas en el README: qué ajustar si no detecta tareas, si no
encuentra el enunciado o si no consigue pegar la respuesta.
Depurar la navegación con Selenium requiere muchas ejecuciones, y generar con un
modelo local en cada una es lento. OLLAMA_MODO_PRUEBA desacopla ambas
cosas: se prueba el scraping sin invocar el modelo.
Desarrollador — autor único.
Automatización con Selenium, integración con Ollama, sistema de contexto por asignatura, generación del Markdown con su lista de comprobación y el diseño de las salvaguardas por defecto.
Versión V0.1-inicio funcional. Requiere Python 3.10+, Chrome y Ollama
corriendo en local. Orientado a apoyo del estudio con revisión manual obligatoria.
El repositorio no incluye datos de acceso: el DNI y la URL del portal se configuran
en config.py.