jueves, 9 de octubre de 2025

Demanda. Propuesta.


Demanda de evaluación (VI)




Traslado de la demanda al SEO

Una vez que el Equipo Educativo ha elaborado su demanda, esta, de un modo u otro, pasa al SEO, que valora la información y se plantea qué hacer (y cómo), pero esas son cuestiones que pertenecen a otros procesos. Por lo que a éste se refiere, tras lo trabajado en las entradas anteriores y en lo que son los términos estrictos de esta sección, sólo queda resolver la recepción del documento por parte del SEO y el modo en que éste va a trabajar con dicho documento.

Al respecto, aunque son varias las posibilidades, la que me interesa plantear ahora es aquella en la que, quien corresponda, nos entrega un documento pdf (formato digital)(1). Nuestro objetivo como SEO es acceder al contenido, especialmente a la parte que contiene la información crítica (DA y dificultades EA, página 2), ya que sobre ella vamos a tomar decisiones y a montar un procedimiento de actuación. Nuestro interés es automatizar este acceso o, cuanto menos, ayudarnos de Python para acceder a esa información. Para este fin utilizaremos la biblioteca PyPDF2. Este sería el script básico...

from PyPDF2 import PdfReader

lector = PdfReader("solicitud.pdf")

pagina = lector.pages[1]

texto = pagina.extract_text()

... con el que podríamos dar por concluida esta tercera fase del proceso simplemente con este script, ya que cubre satisfactoriamente (aunque por la mínima) con el objetivo que enunciamos antes: nos permite acceder al documento (lector = PdfReader("solicitud.pdf")), concretamente a su página 2 (pagina = lector.pages[1]), de la cual extraemos su contenido (texto = pagina.extract_text()). Como puedes ver, mucho con muy poco (2).

Y ciertamente, en este punto podemos dar por finalizado el enfoque de trabajo que hemos mantenido en este proyecto hasta este momento (Python como lenguaje para construir script con los que abordar procedimientos), a la vez que iniciado (estamos aquí en una frontera borrosa) otro enfoque, más instrumental, en el que me planteo usar Python como herramienta para manejar el material (en este caso, el contenido de la segunda página de un documento pdf) que hemos recibido.

Como este planteamiento puede resultar un tanto confuso, aunque no es la primera vez que lo planteo, me parece una buena ocasión para ponerlo en práctica, lo que requiere que nos resituemos como SEO y nos planteemos con qué objetivos vamos a trabajar, ya que son estos los que nos van a guiar en el proceso.

En primer lugar, la finalidad última de nuestro trabajo se concreta como uso de la información sobre DA y dificultades EA para plantear actuaciones, la más inmediata es construir un guion de contenidos para una entrevista con el profesorado (tutor/a). 

Ahora bien, para esto necesitamos hacer algo más (que se aparta de lo que ahora nos planteamos), que es investigar en el expediente escolar del alumno, y no es estrictamente necesario que lo que sí podemos considerar parte de este nuestro actual procedimiento sea resuelto mediante Python: perfectamente podemos copiar el contenido de la salida que nos ofrece el script anterior si el añadimos un print(texto), y pegarlo en un documento (txt o Writer, por ejemplo) y ya podríamos trabajar con el contenido que nos interesa. Esta podría ser tu opción.

De hecho esto ya constituye una forma, la más simple que no la más útil (3), de aplicar ese enfoque directamente instrumental del uso de Python del que te estoy hablando. Lo que te propongo en esta entrada es desarrollarlo de forma más extensa y coherente con un planteamiento orientado a la automatización de los procedimientos de trabajo.

La cuestión está en que, desde este enfoque, no existe un script que entregar como base para tu uso (4); es el script lo que tienes que ir construyendo hasta obtener el resultado que te satisfaga. Esto implica formularlo y reformularlo conforme avanzas en un proceso que vas construyendo en parte en función de tu objetivo-guía, en parte en función de los resultados que vas obteniendo.

En este caso yo me planteo obtener por separado los datos DA observadas y dificultades EA observadas y almacenar ambos en sendos archivos txt para su posterior uso. Hasta aquí llegará mi trabajo con el contenido extraído de l documento PDF.

Esto implica desarrollar dos veces el siguiente proceso:

  • Extraer del documento las líneas correspondientes con la categoría 
  • Pasarlas a una lista específica 
  • Copiarlas en un archivo txt específico
Además, si se da el caso (que se da) será necesario modificar alguno de los elementos de estas listas (5)

Este planteamiento es el que se recoge en el código que te proporcionó en el archivo contenido en el zip que puedes descargar desde [este enlace] y que contiene todos los script del proyecto y todos los documentos auxiliares y aquellos que sirven a modo de ejemplo (6)

NOTAS

(1) En realidad no debería ser infrecuente recibir el conjunto de documentación generada, incluyendo el archivo datos.txt. No obstante ahora vamos a trabajar en base a una realidad tampoco inusual que si no es en este contexto puede perfectamente darse en otros. No es infrecuente tener que trabajar con información aportada en PDF e incluso, aun peor, con documentos en papel, los cuales deberemos escanear si deseamos acceder a su contenido. En ambas situaciones podremos hacer uso de la biblioteca PyPDF2 (u otra similar) como herramienta para automatizar (parcialmente) el acceso al contenido textual de esa documentación.
(2) Se debe entender que estamos usando Python (concretamente PyPDF2) como una herramienta, así que nuestro objetivo con este script no es crear una aplicación (por sencilla que sea) sino obtener un resultado inmediato usando el lenguaje como herramienta de trabajo que, en este caso, sustituye al copia-pega. Este enfoque de trabajo facilita interesantes desarrollos, como podremos ver a continuación en esta misma entrada.
(3) No es precisamente ésta la mejor solución, ya que el resultado del print()-copia-pega nos proporciona un texto plagado de trabajo, pero como ejemplo de lo que quiero decir me sirve perfectamente.
(4) Ese ha sido el planteamiento de los script anteriores dentro de este proyecto. En realidad sí podríamos crear un "borrador" de script con todas (o casi) las instrucciones comentadas para que tú las fueras activando conforme las fueras necesitando. Y puede ser una solución interesante cuando es de esperar que podamos repetir varias veces un mismo proceso, pero en la mayoría de los casos es más bien un esfuerzo excesivo para un resultado incierto. En cualquier caso lo que sí parece interesante es ir comentando el script conforme lo vamos construyendo para saber la motivación y objetivo de cada uno de los pasos que vamos dando: a partir de esta guía pueden surgir procedimientos de interés que podemos retomar como proyectos de script/app en otro momento.
(5) Cuando se trabaja con texto extraído de un PDF no hay garantías de correcta codificación, por lo que es posible que tengas que trabajar con el texto resultante. Este es el caso respecto a las tildes.
(6) Obviamente se trata de un supuesto, no de datos reales.

No hay comentarios:

Publicar un comentario

Comenta esta entrada