Comment convertir du HTML en Word avec Python
Tags: python, html, word
Published: 2023-11-17 08:06:26

Microsoft Word est une application de traitement de texte largement utilisée qui offre des fonctionnalités d'édition et de collaboration avancées. La conversion du HTML en Word permet à plusieurs utilisateurs de collaborer sur le contenu, d'apporter des modifications, de suivre les changements et d'ajouter des commentaires, ce qui peut être particulièrement utile pour les projets d'équipe ou les révisions de documents. Dans cet article, nous explorerons comment **convertir du HTML en Word en utilisant Python**.

## Installer la bibliothèque requise
Pour convertir du HTML en Word avec Python, nous pouvons utiliser la bibliothèque [Spire.Doc for Python](https://www.e-iceblue.com/Introduce/doc-for-python.html), qui nous permet de créer, lire, convertir et manipuler des documents Word dans des applications Python.

Avant de commencer, nous devons installer cette bibliothèque. Ouvrez simplement le terminal de votre projet et exécutez la commande pip suivante :
```python
pip install Spire.Doc 
```

## Convertir du HTML en Word avec Python
Spire.Doc for Python vous permet de convertir soit un fichier HTML, soit une chaîne HTML en format Word.

**Exemple 1. Convertir un fichier HTML en Word avec Python**

L'exemple de code suivant montre comment convertir un fichier HTML en format Word en utilisant Python et Spire.Doc for Python :
```python
from spire.doc import * 
from spire.doc.common import * 
 
# Spécifiez les chemins d'accès du fichier d'entrée et de sortie 
inputFile = "Input.html" 
outputFile = "HtmlToWord.docx" 
 
# Créez un objet de la classe Document 
document = Document() 
# Chargez un fichier HTML 
document.LoadFromFile(inputFile, FileFormat.Html, XHTMLValidationType.none) 
 
# Enregistrez le fichier HTML sous un fichier .docx 
document.SaveToFile(outputFile, FileFormat.Docx2016) 
document.Close() 
```
**Exemple 2. Convertir une chaîne HTML en Word avec Python**

L'exemple de code suivant montre comment convertir une chaîne HTML en format Word en utilisant Python et Spire.Doc for Python :
```python
from spire.doc import * 
from spire.doc.common import * 
 
# Spécifiez le chemin de sortie du fichier 
outputFile = "HtmlStringToWord.docx" 
 
# Créez un objet de la classe Document 
document = Document() 
# Ajoutez une section au document 
sec = document.AddSection() 
 
# Ajoutez un paragraphe à la section 
paragraph = sec.AddParagraph() 
 
# Spécifiez la chaîne HTML 
htmlString = """ 
<html> 
<head> 
    <title>Exemple HTML vers Word</title> 
    <style> 
        body { 
            font-family: Arial, sans-serif; 
        } 
        h1 { 
            color: #FF5733; 
            font-size: 24px; 
            margin-bottom: 20px; 
        } 
        p { 
            color: #333333; 
            font-size: 16px; 
            margin-bottom: 10px; 
        } 
        ul { 
            list-style-type: disc; 
            margin-left: 20px; 
            margin-bottom: 15px; 
        } 
        li { 
            font-size: 14px; 
            margin-bottom: 5px; 
        } 
        table { 
            border-collapse: collapse; 
            width: 100%; 
            margin-bottom: 20px; 
        } 
        th, td { 
            border: 1px solid #CCCCCC; 
            padding: 8px; 
            text-align: left; 
        } 
        th { 
            background-color: #F2F2F2; 
            font-weight: bold; 
        } 
        td { 
            color: #0000FF; 
        } 
    </style> 
</head> 
<body> 
    <h1>Ceci est un titre</h1> 
    <p>Ceci est un paragraphe illustrant la conversion de HTML en document Word.</p> 
    <p>Voici un exemple de liste non ordonnée :</p> 
    <ul> 
        <li>Élément 1</li> 
        <li>Élément 2</li> 
        <li>Élément 3</li> 
    </ul> 
    <p>Et voici un tableau :</p> 
    <table> 
        <tr> 
            <th>Produit</th> 
            <th>Quantité</th> 
            <th>Prix</th> 
        </tr> 
        <tr> 
            <td>Veste</td> 
            <td>30</td> 
            <td>150 $</td> 
        </tr> 
        <tr> 
            <td>Pull</td> 
            <td>25</td> 
            <td>99 $</td> 
        </tr> 
    </table> 
</body> 
</html> 
""" 
 
# Ajoutez la chaîne HTML au paragraphe 
paragraph.AppendHTML(htmlString) 
 
# Enregistrez le document résultant 
document.SaveToFile(outputFile, FileFormat.Docx2016) 
document.Close() 
```

## Conclusion
La conversion du HTML en Word peut faciliter la collaboration sur votre document. En utilisant les exemples de code décrits dans cet article, vous pouvez automatiser facilement le processus de conversion du HTML en Word en utilisant Python.

## Sujets connexes

- [Python : Convertir Word en PDF](https://www.e-iceblue.com/Tutorials/Python/Spire.Doc-for-Python/Program-Guide/Conversion/Python-Convert-Word-to-PDF.html)
- [Python : Convertir du texte en Word ou du Word en texte](https://www.e-iceblue.com/Tutorials/Python/Spire.Doc-for-Python/Program-Guide/Conversion/Python-Convert-Text-to-Word-or-Word-to-Text.html)
- [Python : Convertir Word en images](https://www.e-iceblue.com/Tutorials/Python/Spire.Doc-for-Python/Program-Guide/Conversion/Python-Convert-Word-to-Images.html)
- [Python : Convertir Word en HTML](https://www.e-iceblue.com/Tutorials/Python/Spire.Doc-for-Python/Program-Guide/Conversion/Python-Convert-Word-to-HTML.html)