Saltar al contenido

Escribiendo ficheros docx de Word con Python. Capítulo II – Document

El objetivo de este tutorial es crear documentos en formato .docx y para ello vamos a usar la biblioteca python-docx, puesto que es la más adecuada en el mundo Python para cumplir con nuestro objetivo.

python-docx nos permite escribir documentos desde una API de alto nivel sin tener que saber toda la estructura e interioridades que desmenuzamos de forma breve en el anterior capitulo.

Empecemos a escribir algo de código.

El objeto Document

El objeto Document es nuestro punto de entrada a la creación o modificación de documentos con formato .docx.

Si miramos todo lo que proporciona este objeto:

El anterior comando nos mostrará:

Vemos que existen varios métodos que comienzan por add_* como

  • add_heading que nos permite añadir un cabecero.
  • add_page_break que nos permite añadir un salto de página.
  • add_paragraph que nos permite añadir un párrafo.
  • add_picture que nos permite añadir una imagen.
  • add_section que nos permite añadir una sección.
  • add_table que nos permite añadir una tabla.

Por otra parte tenemos core_properties, que es una property que nos permite acceder al objeto CoreProperties. Este objeto nos permite leer y escribir metadatos del documento que no son visibles.

Lo anterior nos mostrará algo parecido a:

Por último, tenemos algunas cosas más como inline_shapes, paragraphs, sections, settings, styles, tables. Nos permiten acceder a partes y características del documento. Veamos como podemos acceder, por ejemplo, a los párrafos:

Lo anterior nos devuelve una lista, vacía de momento, que contiene los objetos Paragraph que veremos más adelante.

Añadiendo párrafos

Lo anterior añade tres párrafos al objeto doc y mostrará algo parecido a lo siguiente en pantalla:

Vemos que ahora el documento dispone de los tres párrafos que acabamos de añadir usando el método add_paragraph.

Modificando metadatos

Vamos a modificar algunos de los metadatos del documento.

El anterior código debería mostrar algo parecido a lo siguiente en pantalla:

Guardando el documento

En la instancia doc del objeto Document también vimos, en el capítulo anterior, que existía un método save que nos permite guardar el documento con nuestras últimas modificaciones.

Vamos a guardar el documento y a abrirlo con un procesador de texto para poder ver nuestros cambios. En el ejemplo uso Libreoffice abriéndolo desde Jupyter notebook o desde la consola IPython (también puedes abrirlo haciendo doble-click sobre el fichero new.docx que estamos creando).

Deberíamos ver un documento como el de la imagen inferior y si accedemos a las “Properties” desde dentro de Libreoffice podemos ver algunos de los metadatos que hemos modificado.

Resumen

Para empezar a crear un nuevo documento o para modificar uno ya existente hemos de usar el objeto Document. Este objeto dispone de funcionalidad que nos permite ir creando las diferentes partes del documento. En los próximos capítulos iremos viendo más detalles.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

forty three − = thirty nine

Pybonacci