Pregunta

¿Es posible leer y escribir archivos de Word (2003 y 2007) en Python sin usar un objeto COM?
Sé que puedo:

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

pero Word lo leerá como un archivo HTML, no como un archivo .doc nativo.

¿Fue útil?

Solución

Buscaría en IronPython que intrínsecamente tiene acceso a las API de Windows / Office porque se ejecuta en tiempo de ejecución .NET .

Otros consejos

Ver python-docx , su documentación oficial está disponible aquí .

Esto me ha funcionado muy bien.

Si solo quiere leer, es más simple para usar el comando linux soffice para convertirlo en texto y luego cargar el texto en python:

doc (Word 2003 en este caso) y docx (Word 2007) son formatos diferentes, donde este último generalmente es solo un archivo de archivos xml e imagen. Me imagino que es muy posible escribir en archivos docx manipulando el contenido de esos archivos xml. Sin embargo, no veo cómo podría leer y escribir en un archivo doc sin algún tipo de interfaz de componente COM.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top