Použijte nativní modul Python docx . Zde je návod, jak extrahovat veškerý text z dokumentu:
document = docx.Document(filename)
docText = '\n\n'.join(
paragraph.text for paragraph in document.paragraphs
)
print(docText)
Viz web Python DocX
Podívejte se také na Textract, který vytahuje tabulky atd.
Analýza XML pomocí regulárních výrazů vyvolá cthulu. Nedělejte to!
benjaminova odpověď je docela dobrá. Právě jsem zkonsolidoval...
import zipfile, re
docx = zipfile.ZipFile('/path/to/file/mydocument.docx')
content = docx.read('word/document.xml').decode('utf-8')
cleaned = re.sub('<(.|\n)*?>','',content)
print(cleaned)
Můžete provést volání podprocesu antiword. Antiword je linuxový nástroj příkazového řádku pro výpis textu z word doc. Funguje docela dobře pro jednoduché dokumenty (samozřejmě ztrácí formátování). Je k dispozici prostřednictvím apt a pravděpodobně jako RPM, nebo jej můžete zkompilovat sami.
Jak zjistíte, která verze GTK+ je na Ubuntu nainstalována?
Použil jsem Ctrl-Alt-F6 v Linuxu a nemohu obnovit obrazovku