Python конвертирует документы Microsoft Office в обычный текст на linux

Любые рекомендации по методу преобразования .doc,.ppt и .xls в обычный текст на linux с использованием python? Действительно, был бы полезен любой метод преобразования. Я уже рассмотрел использование Open Office, но мне хотелось бы, чтобы решение не требовало установки Open Office.

Ответ 1

Я бы воспользовался командной строкой-решением (а затем с помощью http://vitus.wagner.pp.ru/software/catdoc/.

Нельзя комментировать полезность catppt, но catdoc и xls2csv отлично работают!

Но обязательно сначала найдите свои репозитории дистрибутивов... На ubuntu, например, catdoc - это всего лишь один быстрый apt-get away.

Ответ 3

Обычный инструмент для преобразования документов Microsoft Office в HTML или другие форматы был mswordview, который с тех пор был переименован в vwWare.

Если вы ищете инструмент командной строки, они фактически рекомендуют использовать AbiWord для выполнения преобразования:

AbiWord --to=txt

Если вы ищете библиотеку, запустите страницу wvWare. Они также поддерживают список библиотек и инструментов, которые читают документы MS Office.

Ответ 4

В командной строке antiword или wv отлично работает для файлов .doc. (Не решение Python, но их легко установить и быстро.)

Ответ 5

Такая же проблема. Ниже приведен мой простой script для преобразования всех файлов doc в dir 'docs/' в dir 'txts/' с помощью catdoc. Надеюсь, это поможет кому-то:

#!/usr/bin/env python 
# -*- coding: utf-8 -*-

import glob, re, os
f = glob.glob('docs/*.doc') + glob.glob('docs/*.DOC')

outDir = 'txts'
if not os.path.exists(outDir):
    os.makedirs(outDir)
for i in f:
    os.system("catdoc -w '%s' > '%s'" %
              (i, outDir + '/' + re.sub(r'.*/([^.]+)\.doc', r'\1.txt', i,
                                   flags=re.IGNORECASE)))

Ответ 6

Для работы с таблицами Excel xlwt является хорошим. Но это не поможет с .doc и .ppt файлами.

(Возможно, вы также слышали о PyExcelerator. xlwt - это вилка этого и лучше поддерживается, поэтому я думаю, что вам будет лучше с xlwt.)

Ответ 7

У меня был некоторый успех при использовании XSLT для обработки файлов на базе XML на чем-то, что можно было использовать в прошлом. Это не обязательно решение на основе python, но оно выполняет свою работу.