Extrahieren Sie Text und Bilder aus Word-Dokumenten mit Python

王林
Freigeben: 2023-08-28 18:21:07
Original
1260 Leute haben es durchsucht

Durch das Extrahieren von Inhalten aus Word-Dokumenten können wir diese für andere Vorgänge verwenden, z. B. zum Speichern von Inhalten in Datenbanken, zum Importieren von Inhalten in andere Programme, zum Training künstlicher Intelligenz und zum Erstellen anderer Dokumente. Spire.Doc für Python macht es einfach, Text und Bilder aus Word-Dokumenten zu extrahieren, ohne viel Kopieren und Einfügen oder komplexe Codierung. In diesem Artikel wird beschrieben, wie Sie mit einfachem Code Text- und Bildinhalte aus einem Word-Dokument extrahieren und speichern .

Importieren Sie Spire.Doc für Python

Bevor Sie mit diesem Tool ein Word-Dokument bearbeiten können, müssen Sie es in ein Projekt importieren. Sie können es von der offiziellen Website von Spire.Doc für Python herunterladen oder direkt mit pip installieren. Der Code sieht so aus:

pip install Spire.Doc
pip install plum-dispatch==1.7.4
Nach dem Login kopieren
Vollbildmodus aktivieren Vollbildmodus verlassen

Musterdokument

Extrahieren Sie Text und Bilder aus Word-Dokumenten mit Python

Extrahieren Sie Text aus einem Word-Dokument und schreiben Sie ihn in eine TXT-Datei

Die Methode

Document.GetText() von Spire.Doc für Python kann den gesamten Text in einem Word-Dokument abrufen und als Zeichenfolge zurückgeben. Wir können die zurückgegebene Zeichenfolge zur Speicherung in eine Textdatei schreiben. Die Schritte sind wie folgt:

  • Erstellt ein Dokument-Objekt.
  • Verwenden Sie die Methode Document.LoadFromFile(), um ein Word-Dokument zu laden.
  • Rufen Sie Text aus einem Dokument mit der Methode Document.GetText() ab.
  • Den abgerufenen Text in eine Textdatei schreiben.

Code Bespiel

Python

Copy
from turtle import st
from spire.doc import *
from spire.doc.common import *

def WriteAllText(fname:str,text:List[str]):
        fp = open(fname,"w")
        for s in text:
            fp.write(s)
        fp.close()

inputFile = "Beispiel.docx"
outputFile = "Extrahierter Text.txt"

#Document-Objekt erstellen  
document = Document()

#Word-Dokument laden
document.LoadFromFile(inputFile)

#Text aus Dokument abrufen
text = document.GetText()

#Text in Textdatei schreiben
WriteAllText(outputFile, text)
document.Close()
Nach dem Login kopieren
Vollbildmodus aufrufen Vollbildmodus verlassen

Extrahierter Text

Extrahieren Sie Text und Bilder aus Word-Dokumenten mit Python

Bilder aus Word-Dokument extrahieren und speichern

Das Extrahieren von Bildern ist etwas komplexer, ob dessen untergeordnete Objekte Bilder enthalten

    Erstellt ein
  • Dokument-Objekt.
  • Verwenden Sie die Methode
  • Document.LoadFromFile(), um ein Word-Dokument zu laden.
  • Eine Warteschlange für zusammengesetzte Objekte erstellen und die Dokumentenelemente hinzufügen.
  • Eine Liste zum Speichern der erzeugten Bilder erstellen.
  • Die Dokumentenelemente durchlaufen und die untergeordneten Objekte jedes Knotens durchlaufen, um zu prüfen, ob es sich um ein zusammengesetztes Objekt oder Bildobjekt handelt.
  • Prüfen Sie, ob das untergeordnete Element ein Bildobjekt ist. Wenn ja, die Bilddaten extrahieren und zur Liste hinzufügen.
  • Prüfen Sie, ob das untergeordnete Element ein zusammengesetztes Objekt ist. Wenn ja, zur Warteschlange hinzufügen und weiter prüfen.
  • Bilder in einem Ordner speichern.

Code Bespiel

Python

Copy
import queue
from spire.doc import * 
from spire.doc.common import *
import os

outputPath = "Bilder/"
inputFile = "Beispiel.docx"

if not os.path.exists(outputPath):
    os.makedirs(outputPath)

#Document-Objekt erstellen
document = Document()  

#Word-Dokument laden
document.LoadFromFile(inputFile)

#Warteschlange erstellen und Dokumentenelemente hinzufügen
nodes = queue.Queue()
nodes.put(document)

#Liste erstellen
images = []

#Dokumentenelemente durchlaufen
while nodes.qsize() > 0:
    node = nodes.get()
    for i in range(node.ChildObjects.Count):
        #Untergeordnetes Objekt des Dokumentenelements abrufen
        child = node.ChildObjects.get_Item(i)
        #Prüfen, ob es ein Bild ist
        if child.DocumentObjectType == DocumentObjectType.Picture:
            picture = child if isinstance(child, DocPicture) else None
            dataBytes = picture.ImageBytes
            #Zur Liste hinzufügen
            images.append(dataBytes)
        #Prüfen, ob es ein zusammengesetztes Objekt ist
        elif isinstance(child, ICompositeObject):
            #Zur Warteschlange hinzufügen
            nodes.put(child if isinstance(child, ICompositeObject) else None)

#Bilder speichern
for i, item in enumerate(images):
    fileName = "Bild-{}.png".format(i)
    with open(outputPath+fileName,'wb') as imageFile:
        imageFile.write(item)

document.Close()
Nach dem Login kopieren
Vollbildmodus aufrufen Vollbildmodus verlassen

Extrahierte Bilder

Extrahieren Sie Text und Bilder aus Word-Dokumenten mit Python

Der erstellte Text wird mit angehängten Bewertungsinformationen gespeichert. Sie können die Bewertungsinformationen direkt am Anfang des Textes löschen.

Dies ist eine Einführung in die Verwendung von Spire.Doc für Python zum Extrahieren von Text und Bildern aus Word-Dokumenten. Spire.Doc für Python unterstützt viele andere Dokumentoperationen. Schauen Sie sich die offizielle Website an oder treten Sie dem Spire.Doc-Forum bei.

Das obige ist der detaillierte Inhalt vonExtrahieren Sie Text und Bilder aus Word-Dokumenten mit Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!