Можно ли читать и записывать файлы Word (2003 и 2007) на Python без использования COM-объекта? Я знаю, что могу:
f = open('c:\file.doc', "w") f.write(text) f.close()
но Word будет читать его как файл HTML, а не как собственный файл .doc.
См. python-docx , его официальная документация доступна здесь .
Это сработало очень хорошо для меня.
Если вам нужно только то, что нужно прочитать, самое простое - использовать команду linux soffice, чтобы преобразовать ее в текст, а затем загрузить текст в python:
Я бы посмотрел на IronPython , который по сути имеет доступ к API Windows / Office, потому что он работает в среде выполнения .NET.
doc (в данном случае Word 2003) и docx (Word 2007) - это разные форматы, где последний обычно представляет собой просто архив XML и файлов изображений. Я полагаю, что можно записывать в файлы docx, манипулируя содержимым этих файлов xml. Однако я не вижу, как вы могли бы читать и записывать в файл документа без какого-либо типа интерфейса компонента COM.