Question

Est-il possible de lire et d'écrire des fichiers Word (2003 et 2007) en Python sans utiliser d'objet COM?
Je sais que je peux:

f = open('c:\file.doc', "w")
f.write(text)
f.close()

mais Word le lira comme un fichier HTML et non comme un fichier .doc natif.

Était-ce utile?

La solution

J'examinerais les IronPython qui ont intrinsèquement accès aux API Windows / Office car ils fonctionnent sous le runtime .NET .

Autres conseils

Voir python-docx , sa documentation officielle est disponible ici .

Cela a très bien fonctionné pour moi.

Si vous ne voulez que lire, c'est plus simple d'utiliser la commande linux soffice pour le convertir en texte, puis le charger en python:

doc (Word 2003 dans ce cas) et docx (Word 2007) sont des formats différents, ce dernier étant en général une simple archive de fichiers xml et image. J'imagine qu'il est très possible d'écrire dans des fichiers docx en manipulant le contenu de ces fichiers xml. Cependant, je ne vois pas comment vous pourriez lire et écrire dans un fichier doc sans un certain type d'interface composant COM.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top