Potrzebuję sposobu na wyodrębnienie tekstu ze wszystkich typów dokumentów MS Office (Word, Excel, Powerpoint) w Linuksie. Przewiduję, że może istnieć kilka różnych podejść do osiągnięcia tego, na przykład skrypt Bash lub Python, lub konwersja ich do formatu PDF, a następnie wyodrębnianie tekstu za pomocą narzędzia takiego jak pdftotext.
Wydaje się, że może to być powszechny wymóg. Czy istnieje ustalona procedura lub narzędzie, aby łatwo to osiągnąć?
W końcu znalazłem idealne narzędzie do skryptowania parsowania dokumentów, jest to apache-tika, potrafi parsować gazillionowe formaty nietekstowe na tekst, co jest bardzo fajne!
Pobierz Apache Tika tutaj:
http://tika.apache.org/
(Użytkownicy Mac Homebrew:
brew install tika
)Interfejs wiersza poleceń działa w następujący sposób:
tika --text something.docx > something.txt
źródło
Abiword może konwertować z wiersza polecenia między znanymi formatami plików.
Konwertuj z Worda na zwykły tekst:
abiword --to=txt myfile.doc
Utwórz plik PDF z pliku Word:
abiword --to=pdf myfile.doc
I tak dalej. Wyniki w tych przypadkach to myfile.txt lub myfile.pdf. Jeśli chcesz podać nazwę wyjściową, możesz to zrobić:
abiword --to=txt --to-name=output.txt myfile.doc
Konwertuj ODT na Word:
abiword --to=doc myfile.odt
Konwertuj słowo na ODT:
abiword --to=odt myfile.doc
W odpowiedzi na inne odpowiedzi należy zauważyć, że AbiWord używa wvWare do obsługi dokumentów Word, ale nawet strona główna wvWare zaleca używanie AbiWord zamiast większości konwersji.
Nienawidzę edytorów tekstu. To jest główny powód, dla którego mam zainstalowany AbiWord.
Może Cię również zainteresować unoconv , który jest podobnym narzędziem obsługującym formaty, które zna OpenOffice (które obejmowałyby arkusze kalkulacyjne i tym podobne), ale nie mam z tym doświadczenia.
źródło
Z LibreOffice możesz:
źródło
Możesz użyć CUPS (drukarka wirtualna) i za pomocą ld.
źródło
wv jest jedną z opcji, a IIRC OpenOffice można powiedzieć z wiersza poleceń, aby wyeksportować jako pdf i wyjść.
źródło
Jeśli chcesz używać Apache Tika w projekcie Python, sprawdź ten post na blogu .
źródło
1.doc catdoc lub antiword do konwersji plików doc, możesz użyć następującego polecenia catdoc file.doc> plik lub plik antiword.doc> plik
docx docx2txt
plik pdf emacs.pdf plik ctrl-x ctrl-s
źródło
Docsplit to idealne narzędzie do wydobywania tekstu z pdf. To rubinowy klejnot. Dlatego powinieneś zainstalować ruby i klejnot w systemie Linux przed użyciem polecenia docsplit.
Jeśli twój system nie ma rubinu i klejnotu, postępuj zgodnie z instrukcją.
Musisz być rootem, aby zainstalować oprogramowanie (zakładając, że chcesz, aby było ono dostępne dla wszystkich użytkowników).
Zainstaluj ruby na Linuksie: mniam zainstaluj ruby
Zainstaluj klejnot, pobierz najnowszy pakiet klejnotów, a następnie postępuj zgodnie z instrukcjami
tar xzf rubygems-xxxx.tgz
cd rubygems-xxxx
ruby setup.rb
Teraz, gdy RubyGems jest zainstalowany, powinieneś mieć polecenie gem (gem to polecenie używane do interakcji z systemem pakietów RubyGems). Przetestuj to, uruchamiając:
lista klejnotów
Teraz przejdź do następnego kroku, aby zainstalować klejnot docsplit, przejdź do następującej witryny. http://documentcloud.github.com/docsplit/
źródło