Es gibt verschiedene Dokumente im Büro, wie Verträge und Berichte, aber ich denke, der Mainstream ist [Word-Dokumente].
Bei der Automatisierung von Vorgängen gibt es viele Fälle, in denen Sie die Erstellung und das Lesen von Word-Dokumenten automatisieren möchten. Tatsächlich verwende ich Python auch, um die Erstellung von Sendungsverträgen zu automatisieren, die ich alle drei Monate erstelle.
In diesem Artikel werde ich erklären, wie man eine Bibliothek namens python-docx verwendet, um ** Word-Dokumente mit Python zu lesen **. (Beim nächsten Mal werde ich vorstellen, wie Word-Dokumente erstellt und ersetzt werden.)
python-docx ist keine Standardbibliothek. Sogar Anaconda ist standardmäßig nicht enthalten. Installieren wir es also zuerst.
pip install python-docx
Importieren Sie die Bibliothek nach der Installation. Bitte beachten Sie, dass es sich beim Importieren um ** dox ** und nicht um python-docx handelt.
python
import docx
Lesen Sie dann das Word-Dokument und erstellen Sie das Objekt. Hier wird das folgende Dokument mit dem Namen "Test.docx" gelesen.
python
document = docx.Document("Prüfung.docx")
Dieses Dokumentobjekt verfügt über eine Liste mit dem Namen Absätze und eine Liste mit dem Namen Tabellen.
Absätze sind die Absätze im Text, und Tabellen sind die Tabellen. Tabellen haben Zeilen als Liste von Zeilen und Zeilen haben Spalten (Zellen) als Liste namens Zellen. Wenn Sie den Text erhalten möchten, beziehen Sie sich auf das Attribut Text.
Mit anderen Worten, es hat eine solche Struktur.
python
for paragraph in word.paragraphs:
print(paragraph.text)
Ausführungsergebnis
Dies ist der erste Absatz.
Dies ist der zweite Absatz.
python
for table in document.tables:
for row in table.rows:
for cell in row.cells:
print(cell.text)
Ausführungsergebnis
Hier ist eine Zeile der Tabelle/1 Reihe
Hier ist eine Zeile der Tabelle/2 Reihen
Hier sind zwei Zeilen der Tabelle/1 Reihe
Hier sind zwei Zeilen der Tabelle/2 Reihen
Leider kann Python-Docx keine ** Fußnoten ** lesen.
Wenn Sie einschließlich Fußnoten arbeiten möchten, müssen Sie anscheinend eine andere Methode in Betracht ziehen.
Recommended Posts