Buscar y reemplazar texto en PowerPoint PPT en Python

Mientras procesa documentos digitales, a menudo necesita buscar y reemplazar un texto específico en el contenido. Esto podría ser necesario cuando se debe censurar una parte de la información antes de compartir los documentos. Para lograr esto mediante programación, este artículo explica cómo buscar y reemplazar texto en PowerPoint PPT o PPTX en Python.

Biblioteca de Python para buscar y reemplazar texto en PowerPoint PPT

Aspose.Slides for Python via .NET es una biblioteca increíble que simplifica la manipulación de presentaciones de PowerPoint desde las aplicaciones de Python. Además, puede crear presentaciones enriquecidas desde cero sin problemas. Usaremos esta biblioteca para buscar y reemplazar texto en archivos PPT/PPTX. Puede usar el siguiente comando pip para instalar la biblioteca desde PyPI.

> pip install aspose.slides

Buscar y reemplazar texto en PowerPoint PPT usando Python

Para reemplazar un fragmento de texto en particular en la presentación, deberá revisar el contenido de todas las diapositivas, lo cual es bastante fácil con Aspose.Slides. Los siguientes son los pasos para buscar y reemplazar texto en una presentación PPTX en Python.

  • Primero, cargue el PowerPoint PPT/PPTX usando la clase de presentación.
  • Luego, recorra las diapositivas usando la colección Presentation.slides.
  • En cada iteración, obtenga marcos de texto de la diapositiva usando el método SlideUtil.get_all\text\boxes(slide).
  • Recorra los marcos de texto y, en cada iteración, realice las siguientes operaciones:
    • Recorra los párrafos en el marco de texto.
    • Accede a las porciones de texto de cada párrafo.
    • Compruebe si la parte del texto contiene la cadena de búsqueda.
    • En caso afirmativo, encuentre la posición de la cadena de búsqueda y reemplace el texto.
  • Guarde el PPT actualizado usando el método Presentation.save(string, SaveFormat).

El siguiente ejemplo de código muestra cómo buscar y reemplazar texto en un PowerPoint PPTX en Python.

import aspose.slides as slides

# load presentation
with slides.Presentation("presentation.pptx") as pres:

    strToFind = "Master"
    strToReplaceWith = "[replaced]"

    # loop through each slide
    for slide in pres.slides:

        # get all text frames in the slide
        tf = slides.util.SlideUtil.get_all_text_boxes(slide)

        # loop through text frames
        for i in range(len(tf)):

            # loop through paragraphs in text frame
            for para in tf[i].paragraphs:

                # loop through text portions in paragraph
                for port in para.portions:

                    # check if search string appears in text portion
                    if strToFind in port.text:    

                        # replace exisitng text with the new text
                        str = port.text
                        idx = str.index(strToFind)
                        strStartText = str[0: idx]
                        strEndText = str[idx + len(strToFind): len(str)]
                        port.text = strStartText + strToReplaceWith + strEndText

    # save the presentation
    pres.save("find-and-replace-text.pptx", slides.export.SaveFormat.PPTX)

La siguiente captura de pantalla muestra la presentación de PowerPoint de entrada.

Buscar y reemplazar texto en PPT usando Python

A continuación se muestra la captura de pantalla de la presentación resultante después de reemplazar el texto.

Reemplazar texto en PowerPoint PPT en Python

Obtenga una licencia gratis

Puede usar Aspose.Slides for Python a través de .NET sin limitaciones de evaluación solicitando una licencia temporal.

Conclusión

En este artículo, ha aprendido a buscar y reemplazar texto en PowerPoint PPT en Python. Puede instalar Aspose.Slides y automatizar la búsqueda y el reemplazo de texto desde sus aplicaciones de Python. Además, puede leer la documentación para explorar más sobre Aspose.Slides for Python. Además, puede publicar sus consultas en nuestro foro.

Ver también

Información: Aspose desarrolló recientemente un servicio gratuito en línea Text to GIF que le permite animar textos o generar GIF a partir de textos simples.