extraire des images de documents word en python

Une image vaut mieux que mille mots. C’est la raison pour laquelle les images font partie intégrante des documents, en particulier des documents Word. Les images sont utilisées pour rendre le contenu plus attrayant et accrocheur. Lors de l’analyse de documents Word, vous pouvez rencontrer le scénario dans lequel vous devez extraire des images. Pour y parvenir par programmation, cet article explique comment extraire des images de documents Word en Python.

Bibliothèque Python pour extraire des images de documents Word

Aspose.Words for Python est une bibliothèque puissante et riche en fonctionnalités qui est utilisée pour créer et manipuler des documents Word. Nous utiliserons cette bibliothèque pour extraire des images de fichiers DOCX ou DOC. Vous pouvez l’installer dans vos applications Python à partir de PyPI à l’aide de la commande pip suivante.

pip install aspose-words

Extraction d’images à partir de documents Word en Python

Les images dans les documents Word sont représentées par les nœuds de forme. Par conséquent, pour récupérer des images d’un document, vous devrez analyser les formes. Les étapes suivantes montrent comment extraire des images d’un document Word en Python.

  • Tout d’abord, chargez le document Word à l’aide de la classe Document.
  • Ensuite, récupérez toutes les formes dans un objet à l’aide de la méthode Document.getchildnodes(NodeType.SHAPE, True).
  • Parcourez les formes et pour chaque forme, effectuez les opérations suivantes :
    • Transformez la forme en type Shape à l’aide de la méthode asshape().
    • Vérifiez si la forme a une image en utilisant la méthode Shape.hasimage().
    • Enregistrez la forme en tant qu’image à l’aide de la méthode Shape.imagedata.save(string).

L’exemple de code suivant montre comment extraire des images d’un document DOCX en Python.

import aspose.words as aw

# load the Word document
doc = aw.Document("calibre.docx")

# retrieve all shapes
shapes = doc.get_child_nodes(aw.NodeType.SHAPE, True)
imageIndex = 0

# loop through shapes
for shape in shapes :
    shape = shape.as_shape()
    if (shape.has_image) :

        # set image file's name
        imageFileName = f"Image.ExportImages.{imageIndex}_{aw.FileFormatUtil.image_type_to_extension(shape.image_data.image_type)}"

        # save image
        shape.image_data.save(imageFileName)
        imageIndex += 1

Obtenez une licence API gratuite

Vous pouvez obtenir une licence temporaire pour utiliser Aspose.Words for Python sans limitation d’évaluation.

Conclusion

Les images sont couramment utilisées dans les documents Word pour rendre le contenu plus attrayant. Dans divers cas, des images doivent également être extraites des documents avec le texte. Par conséquent, dans cet article, vous avez appris à extraire des images de documents Word en Python. En plus de cela, vous pouvez explorer la documentation de Aspose.Words for Python. Si vous avez des questions, n’hésitez pas à nous en faire part via notre forum.

Voir également

Info : Si jamais vous avez besoin d’obtenir un document Word à partir d’une présentation PowerPoint, vous pouvez utiliser le convertisseur Aspose Presentation to Word Document.