Python MS Word

Возможный дубликат:
Чтение / запись файлов MS Word в Python

Я изучаю систему управления требованиями (например, requiste pro – Rational Rose) – и вам нужно будет прочитать документ MS Word для поиска определенных тегов – в среде Windows или Apple OS. Существуют ли какие-либо известные рамки для этого (я не мог найти их) – или предлагаемые подходы?

Просто добавим некоторые пояснения – это не будет разовое чтение, я бы рассмотрел документ каждый раз, когда есть обновление для него, и выполнить CRUD в определенных областях требований.

6 Solutions collect form web for “Python MS Word”

Сначала извлеките его из родного формата Word ( .doc ).

  • Сделайте «Сохранить как XML» и настаивайте, чтобы ваши пользователи работали с этим файлом, а не с файлом .doc . Они вряд ли заметят разницу – за исключением того, что файл больше.

    Используйте lxml или дерево элементов для анализа XML и найдите заголовки, разделы, абзацы и списки.

  • Вы также можете сделать «Сохранить как HTML», прежде чем выполнять свой анализ. Это работает так же хорошо, как и версия XML. Однако HTML-версия не так проста для пользователей, поэтому сделайте это только до вашего анализа.

    Используйте Beautiful Soup для анализа HTML и поиска заголовков, разделов, абзацев и списков.

Когда у вас есть структура синтаксического анализа (XML или HTML), вы можете анализировать документ, ищущий определенные теги.

Вы можете опираться на способность openoffice.org читать документы Word. Мост Python-UNO позволяет использовать стандартный OpenOffice.org API с языка сценариев python. Используя Python-UNO и имеющие соответствующие части openoffice на вашем компьютере, должно быть легко читать большинство документов Word.

Используя Visual Studio Tools for Office (VSTO) , можно выполнить сценарий Word с любого языка .NET . Пример « Поиск текста в документах» показывает код C# и Visual Basic , но IronPython также может вызывать те же методы .NET .

Если вы готовы использовать IronPython (без эквивалента Mac), это может быть специальным решением Windows для поиска внутри документов Word .

Предполагая, что вы на окнах и у вас установлен Word, вы можете управлять Word изнутри python с помощью COM – см. Python для win32. В Linux вы можете сделать то же самое с OpenOffice.

В качестве альтернативы есть набор экстракторов строк для Word для win32 или Linux, тогда вы можете использовать обычные инструменты регулярного выражения python.

См. Этот вопрос, извлекая текст из текстовых файлов MS в python

Если у вас есть немного денег, вы можете купить API-интерфейс Aspose.Word s. С его помощью вы можете программно получать доступ и манипулировать любым документом Word

Я знаю, что это вопрос Python, но …

В Windows вы должны использовать VBScript (VBA Macros) и OLE для программного доступа к Word.

Примеры | Практические советы | Автоматизация Word с использованием OLE

В MacOSX вы используете VBA для более старых версий и AppleScript для Office 2008.

Статья

С VBA у вас есть выбор либо изменить документ на месте, либо выполнить автоматическое «Сохранить как», чтобы получить данные в более удобном для пользователя формате (хотя следует предупредить, что его экспорт HTML является ужасным).

Я настоятельно рекомендую держаться подальше от сторонних библиотек / продуктов для этого, даже если вам не нравится vbscript. Формат слишком сложный, недокументированный и непоследовательный для точной внешней обработки. StarOffice / OpenOffice является доказательством этого. Они много лет стараются и не имеют точного анализа .doc, не говоря уже о .docx. Да, он работает в целом, но вы запускаете неподдающийся риску манипулирование документами, как только вы начинаете пытаться программировать их вне Word. Вы должны иметь возможность вызывать VBscript из Python с помощью os.system. Я думаю, что интерпретатор wscript.exe, но не держите меня в этом. Это может сработать:

 os.system('start script.vb') 
  • Как создать документ Word с помощью Python?
  • Возврат результата внешнего скрипта к VBA
  • ошибка python-docx style_id при создании словарного документа
  • Копирование кода в текстовый документ и сохранение форматирования
  • Есть ли библиотека python для редактирования файлов msword doc?
  • Python win32com - Автоматизация Word - Как заменить текст в текстовом поле?
  • Лучший способ обработки документа Word
  • Текст-Заменить в docx и сохранить измененный файл с помощью python-docx
  •  
    Interesting Posts for Van-Lav

    Чтение потокового ответа HTTP с помощью библиотеки «запросы» Python

    Как расширить distutils с помощью простого сценария установки после установки?

    Python.27 – кодировка MySQL utf8

    Генератор функции «отправить» генератора питона?

    базовая HTTP-аутентификация с django-piston

    Как подключиться к локальной очереди MQseries с помощью Python?

    Вычислить среднее и медианное эффективно

    Идиома для приема сокетов в Python

    Использование OAuth2 с именем пользователя и паролем

    Одновременно используйте функции ввода () и print () (например, в чате)

    Получите легенду как отдельное изображение в Matplotlib

    Публикация приложения MVC, использующего скрипт python

    Каковы наилучшие способы сравнения содержимого двух подобных спискам объектов?

    Обнаружение из запущенного скрипта python, если флаг оптимизации -O или -OO

    Регулярное выражение, соответствующее многострочному блоку текста

    Python - лучший язык программирования в мире.