Recherche de site Web

Comment créer des présentations PowerPoint avec Python


Ce guide étape par étape montre comment utiliser Python et la bibliothèque python-pptx pour créer des présentations PowerPoint depuis la ligne de commande.

Les étapes et le code fournis dans ce guide ne sont pas spécifiques à un système d'exploitation particulier et devraient fonctionner sur toutes les principales plateformes, y compris Linux, macOS et Windows.

Qu'est-ce que Python-pptx, au fait ?

La bibliothèque python-pptx est une bibliothèque Python open-source qui vous permet de créer, lire et mettre à jour des fichiers PowerPoint (.pptx).

La bibliothèque python-pptx est particulièrement adaptée à la génération dynamique de présentations PowerPoint à partir de diverses sources de données comme indiqué ci-dessous :

  1. Requêtes de base de données : En vous connectant à une base de données et en exécutant des requêtes, vous pouvez extraire des données et utiliser la bibliothèque python-pptx pour générer des diapositives PowerPoint avec des visualisations, des graphiques ou des tableaux basés sur les données interrogées. Cette approche peut être utile pour créer des présentations ou des rapports basés sur les données.
  2. Résultats d'analyse : Si vous disposez d'un logiciel ou de scripts d'analyse qui génèrent des données structurées ou des informations, vous pouvez utiliser la bibliothèque python-pptx pour transformer ces données en diapositive PowerPoint visuellement attrayantes, complètes avec des graphiques, des diagrammes et d'autres éléments visuels.
  3. Charges utiles JSON : Avec la prévalence croissante des API et des services web, il est courant de recevoir des données au format JSON. La bibliothèque python-pptx peut être utilisée pour analyser les charges utiles JSON et créer dynamiquement des diapositives PowerPoint en fonction des données structurées qu'elles contiennent.
  4. Requêtes HTTP : En intégrant la bibliothèque python-pptx dans une application web ou une API, vous pouvez générer des présentations PowerPoint à la volée en réponse aux requêtes HTTP. Cela permet de créer des présentations dynamiques et personnalisées adaptées à des entrées utilisateur spécifiques ou à des sources de données.

La bibliothèque python-pptx fonctionne sur toute plateforme compatible avec Python, y compris Linux, macOS et Windows.

Un autre avantage important de la bibliothèque python-pptx est qu'elle ne nécessite pas que l'application PowerPoint soit installée sur le système où le code s'exécute.

Discutons maintenant de la façon de automatiser le processus de création de présentations PowerPoint simples en utilisant la bibliothèque python-pptx.

Créer des présentations PowerPoint en utilisant Python

Le processus est divisé en trois étapes simples : installer le logiciel requis, créer le script Python, et exécuter le script pour produire le fichier de présentation.

Étape 1 - Installation des prérequis

Avant de continuer, assurez-vous que Python est installé sur votre système.

Python est préinstallé dans la plupart des systèmes d'exploitation Linux. Sinon, vous pouvez l'installer en utilisant la commande suivante sur les systèmes basés sur Debian :

$ sudo apt install python3

Sur les systèmes basés sur Red Hat, exécutez :

$ sudo dnf install python3

Ensuite, installez la bibliothèque python-pptx, qui fournit les fonctionnalités nécessaires pour créer des présentations PowerPoint de manière programmatique. Vous pouvez l'installer en utilisant pip, l'installateur de paquets de Python :

$ pip install python-pptx

Étape 2 - Création du script Python

Créez un nouveau script Python (par exemple, create_ppt.py) :

$ nano create_ppt.py

et copiez le code suivant dedans :

from pptx import Presentation
from pptx.util import Inches

# Create a new presentation object
presentation = Presentation()

# Title Slide
title_slide_layout = presentation.slide_layouts[0]  # Layout for title slides
slide = presentation.slides.add_slide(title_slide_layout)
title = slide.shapes.title
subtitle = slide.placeholders[1]
title.text = "Linux Security Automation"
subtitle.text = "An overview of securing Linux systems"

# Slide 1: Importance of Linux Security
content_slide_layout = presentation.slide_layouts[1]  # Layout for content slides
slide = presentation.slides.add_slide(content_slide_layout)
title = slide.shapes.title
content = slide.placeholders[1]
title.text = "Importance of Linux Security"
content.text = (
    "1. Protects against unauthorized access.\n"
    "2. Ensures data integrity.\n"
    "3. Maintains system availability.\n"
    "4. Protects sensitive information.\n"
)

# Slide 2: Common Security Practices
slide = presentation.slides.add_slide(content_slide_layout)
title = slide.shapes.title
content = slide.placeholders[1]
title.text = "Common Security Practices"
content.text = (
    "1. Regularly update and patch the system.\n"
    "2. Use strong passwords and change them regularly.\n"
    "3. Enable and configure firewalls.\n"
    "4. Use antivirus software.\n"
    "5. Monitor system logs for suspicious activities.\n"
)

# Slide 3: Security Tools
slide = presentation.slides.add_slide(content_slide_layout)
title = slide.shapes.title
content = slide.placeholders[1]
title.text = "Security Tools"
content.text = (
    "1. SELinux/AppArmor - Mandatory Access Control.\n"
    "2. ClamAV - Antivirus software.\n"
    "3. Fail2Ban - Prevent brute force attacks.\n"
    "4. UFW - Uncomplicated Firewall.\n"
)

# Save the presentation
presentation.save('Linux_Security_Presentation.pptx')

Modifiez le script et mettez à jour le titre, le contenu des diapositives et le fichier de sortie comme vous le souhaitez. Une fois terminé, enregistrez le fichier et fermez-le.

Explication du script :

Ce script crée une nouvelle présentation PowerPoint et ajoute quatre diapositives : une diapositive de titre et trois diapositives de contenu couvrant l'importance de la sécurité Linux, les pratiques de sécurité courantes et les outils de sécurité.

Diapositive de titre:

Le script initialise un nouvel objet Présentation et ajoute une diapositive de titre avec le titre principal « Linux Security Automation » et le sous-titre « An overview of securing Linux systems ».

Diapositives de contenu:

Le script ajoute ensuite trois diapositives de contenu, chacune avec un titre et des points à puces couvrant différents aspects de la sécurité Linux :

  • Diapositive 1 : Importance de la sécurité Linux (par exemple, protéger contre les accès non autorisés, assurer l'intégrité des données, maintenir la disponibilité du système et protéger les informations sensibles).
  • Diapositive 2 : Pratiques de sécurité courantes (par exemple, mettre régulièrement à jour et appliquer des correctifs au système, utiliser des mots de passe forts, activer les pare-feu, utiliser un logiciel antivirus et surveiller les journaux du système).
  • Diapositive 3 : Outils de sécurité (par exemple, SELinux/AppArmor pour le contrôle d'accès obligatoire, ClamAV pour la protection antivirus, Fail2Ban pour prévenir les attaques par force brute, et UFW pour un pare-feu simple).

Enregistrer la présentation:

Enfin, le script enregistre la présentation PowerPoint sous Linux_Security_Presentation.pptx dans le répertoire courant.

Étape 3 - Générer des diapositives PowerPoint

Accédez au répertoire contenant le script dans votre terminal et exécutez la commande suivante :

$ python3 create_ppt.py

Cette commande exécutera le script et générera un nouveau fichier PowerPoint nommé "Linux_Security_Presentation.pptx" dans le même répertoire.

Étape 4 - Exécuter ou personnaliser les PPT

Comme je l'ai mentionné, ce script ne créera que des présentations PowerPoint simples. Elles sont sobres avec un fond blanc.

Voici un exemple de diapositive PPT que j'ai créé en utilisant ce script :

Une diapositive PowerPoint créée avec Python

Vous pouvez l'ouvrir avec n'importe quelle application PowerPoint (par exemple LibreOffice Impress ou MS PowerPoint) et personnaliser l'apparence des diapositives selon vos préférences.

Voici à quoi ressemble la diapositive après que j'ai changé son arrière-plan et ajouté le logo de notre blog en haut de la diapositive :

Une diapositive PowerPoint créée avec la bibliothèque Python-pptx

Ce script sert d'exemple de base, et vous pouvez l'améliorer davantage en ajoutant plus de diapositives, en personnalisant le contenu ou en incorporant des fonctionnalités supplémentaires, telles que l'ajout d'images, de graphiques ou d'options de mise en forme.

Vous avez compris l'idée. Utilisez notre script comme point de départ. Personnalisez-le et soyez créatif. Vous pouvez rendre les diapositives plus élégantes et professionnelles.

Ressource:

  • https://pypi.org/project/python-pptx/