Rechercher et remplacer du texte dans PowerPoint PPT en Python

Lors du traitement de documents numériques, vous devez souvent rechercher et remplacer un texte spécifique dans le contenu. Cela pourrait être nécessaire lorsqu’une information doit être censurée avant de partager les documents. Pour ce faire par programmation, cet article explique comment rechercher et remplacer du texte dans PowerPoint PPT ou PPTX en Python.

Bibliothèque Python pour rechercher et remplacer du texte dans PowerPoint PPT

Aspose.Slides for Python via .NET est une bibliothèque étonnante qui simplifie la manipulation des présentations PowerPoint à partir des applications Python. De plus, vous pouvez créer des présentations riches à partir de zéro de manière transparente. Nous utiliserons cette bibliothèque pour rechercher et remplacer du texte dans des fichiers PPT/PPTX. Vous pouvez utiliser la commande pip suivante pour installer la bibliothèque à partir de PyPI.

> pip install aspose.slides

Rechercher et remplacer du texte dans PowerPoint PPT à l’aide de Python

Pour remplacer un texte particulier dans la présentation, vous devrez parcourir le contenu de toutes les diapositives, ce qui est assez facile avec Aspose.Slides. Voici les étapes pour rechercher et remplacer du texte dans une présentation PPTX en Python.

  • Tout d’abord, chargez le PowerPoint PPT/PPTX à l’aide de la classe Presentation.
  • Ensuite, parcourez les diapositives à l’aide de la collection Presentation.slides.
  • À chaque itération, récupérez les cadres de texte de la diapositive à l’aide de la méthode SlideUtil.getalltextboxes(slide).
  • Parcourez les cadres de texte et à chaque itération, effectuez les opérations suivantes :
    • Parcourez les paragraphes dans le bloc de texte.
    • Accédez aux portions de texte de chaque paragraphe.
    • Vérifiez si la partie de texte contient la chaîne de recherche.
    • Si oui, trouvez la position de la chaîne de recherche et remplacez le texte.
  • Enregistrez le PPT mis à jour à l’aide de la méthode Presentation.save(string, SaveFormat).

L’exemple de code suivant montre comment rechercher et remplacer du texte dans 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 capture d’écran suivante montre la présentation PowerPoint d’entrée.

Rechercher et remplacer du texte dans PPT à l'aide de Python

Vous trouverez ci-dessous la capture d’écran de la présentation résultante après avoir remplacé le texte.

Remplacer le texte dans PowerPoint PPT en Python

Obtenez une licence gratuite

Vous pouvez utiliser Aspose.Slides for Python via .NET sans limitation d’évaluation en demandant une licence temporaire.

Conclusion

Dans cet article, vous avez appris à rechercher et à remplacer du texte dans PowerPoint PPT en Python. Vous pouvez installer Aspose.Slides et automatiser la recherche et le remplacement de texte à partir de vos applications Python. En outre, vous pouvez lire la documentation pour en savoir plus sur Aspose.Slides for Python. Vous pouvez également poster vos questions sur notre forum.

Voir également

Info : Aspose a récemment développé un service Text to GIF en ligne gratuit qui permet d’animer des textes ou de générer des GIF à partir de textes simples.