Вопрос

Можно ли читать и записывать файлы Word (2003 и 2007) на Python без использования COM-объекта?
Я знаю, что могу:

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

но Word будет читать его как файл HTML, а не как собственный файл .doc.

Это было полезно?

Решение

Я бы заглянул в IronPython , который по сути имеет доступ к API Windows / Office, поскольку он работает в среде выполнения .NET .

Другие советы

Смотрите python-docx , его официальная документация доступна здесь .

Это сработало очень хорошо для меня.

Если вам только что читать, это самое простое использовать команду linux soffice, чтобы преобразовать ее в текст, а затем загрузить текст в python:

doc (в данном случае Word 2003) и docx (Word 2007) - это разные форматы, где последний обычно представляет собой просто архив XML и файлов изображений. Я мог бы представить, что очень возможно записывать в файлы docx, манипулируя содержимым этих файлов xml. Однако я не вижу, как вы могли бы читать и записывать в файл документа без какого-либо типа интерфейса компонента COM.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top