Python: crea, leggi o aggiorna un documento Word

2023-12-18 03:07:28

Creare, leggere e aggiornare documenti Word è un'esigenza comune per molti sviluppatori che lavorano con il linguaggio di programmazione Python. Che si tratti di generare report, manipolare documenti esistenti o automatizzare i processi di creazione di documenti, avere la capacità di lavorare con documenti Word a livello di codice può migliorare notevolmente la produttività e l'efficienza. In questo articolo imparerai come farlo creare, leggere o aggiornare documenti Word in Python utilizzando Spire.Doc for Python.

Installa Spire.Doc for Python

Questo scenario richiede Spire.Doc for Python e plum-dispatch v1.7.4. Possono essere facilmente installati nel tuo VS Code tramite il seguente comando pip.

pip install Spire.Doc

Se non sei sicuro su come installare, fai riferimento a questo tutorial: Come installare Spire.Doc for Python in VS Code

Crea un documento Word da zero in Python

Spire.Doc for Python offre la classe Document per rappresentare un modello di documento Word. Un documento deve contenere almeno una sezione (rappresentata dalla classe Sezione) e ogni sezione è un contenitore per vari elementi come paragrafi, tabelle, grafici e immagini. Questo esempio mostra come creare un semplice documento Word contenente diversi paragrafi utilizzando Spire.Doc per Python.

  • Creare un oggetto Documento.
  • Aggiungi una sezione utilizzando il metodo Document.AddSection().
  • Imposta i margini della pagina tramite la proprietà Sezione.PageSetUp.Margins.
  • Aggiungi diversi paragrafi alla sezione utilizzando il metodo Sezione.AddParagraph().
  • Aggiungi testo ai paragrafi utilizzando il metodo Paragraph.AppendText().
  • Crea un oggetto ParagraphStyle e applicalo a un paragrafo specifico utilizzando il metodo Paragraph.ApplyStyle().
  • Salva il documento in un file Word utilizzando il metodo Document.SaveToFile().
  • Python
from spire.doc import *
from spire.doc.common import *

# Create a Document object
doc = Document()

# Add a section
section = doc.AddSection()

# Set the page margins
section.PageSetup.Margins.All = 40

# Add a title
titleParagraph = section.AddParagraph()
titleParagraph.AppendText("Introduction of Spire.Doc for Python")

# Add two paragraphs
bodyParagraph_1 = section.AddParagraph()
bodyParagraph_1.AppendText("Spire.Doc for Python is a professional Python library designed for developers to " +
                           "create, read, write, convert, compare and print Word documents in any Python application " +
                           "with fast and high-quality performance.")

bodyParagraph_2 = section.AddParagraph()
bodyParagraph_2.AppendText("As an independent Word Python API, Spire.Doc for Python doesn't need Microsoft Word to " +
                           "be installed on neither the development nor target systems. However, it can incorporate Microsoft Word " +
                           "document creation capabilities into any developers' Python applications.")

# Apply heading1 to the title
titleParagraph.ApplyStyle(BuiltinStyle.Heading1)

# Create a style for the paragraphs
style2 = ParagraphStyle(doc)
style2.Name = "paraStyle"
style2.CharacterFormat.FontName = "Arial"
style2.CharacterFormat.FontSize = 13
doc.Styles.Add(style2)
bodyParagraph_1.ApplyStyle("paraStyle")
bodyParagraph_2.ApplyStyle("paraStyle")

# Set the horizontal alignment of the paragraphs
titleParagraph.Format.HorizontalAlignment = HorizontalAlignment.Center
bodyParagraph_1.Format.HorizontalAlignment = HorizontalAlignment.Left
bodyParagraph_2.Format.HorizontalAlignment = HorizontalAlignment.Left

# Set the after spacing
titleParagraph.Format.AfterSpacing = 10
bodyParagraph_1.Format.AfterSpacing = 10

# Save to file
doc.SaveToFile("output/WordDocument.docx", FileFormat.Docx2019)

Python: Create, Read, or Update a Word Document

Leggere il testo di un documento Word in Python

Per ottenere il testo di un intero documento Word, puoi semplicemente utilizzare il metodo Document.GetText(). Di seguito sono riportati i passaggi dettagliati.

  • Creare un oggetto Documento.
  • Carica un documento Word utilizzando il metodo Document.LoadFromFile().
  • Ottieni testo dall'intero documento utilizzando il metodo Document.GetText().
  • Python
from spire.doc import *
from spire.doc.common import *

# Create a Document object
doc = Document()

# Load a Word file
doc.LoadFromFile("C:\\Users\\Administrator\\Desktop\\WordDocument.docx")

# Get text from the entire document
text = doc.GetText()

# Print text
print(text)

Python: Create, Read, or Update a Word Document

Aggiorna un documento Word in Python

Per accedere a un paragrafo specifico, è possibile utilizzare la proprietà Sezione.Paragraphs[indice]. Se desideri modificare il testo del paragrafo, puoi riassegnare il testo al paragrafo tramite la proprietà Paragraph.Text. Di seguito sono riportati i passaggi dettagliati.

  • Creare un oggetto Documento.
  • Carica un documento Word utilizzando il metodo Document.LoadFromFile().
  • Ottieni una sezione specifica tramite la proprietà Document.Sections[index].
  • Ottieni un paragrafo specifico tramite la proprietà Sezione.Paragraphs[indice].
  • Modificare il testo del paragrafo tramite la proprietà Paragraph.Text.
  • Salva il documento in un altro file Word utilizzando il metodo Document.SaveToFile().
  • Python
from spire.doc import *
from spire.doc.common import *

# Create a Document object
doc = Document()

# Load a Word file
doc.LoadFromFile("C:\\Users\\Administrator\\Desktop\\WordDocument.docx")

# Get a specific section
section = doc.Sections[0]

# Get a specific paragraph
paragraph = section.Paragraphs[1]

# Change the text of the paragraph
paragraph.Text = "The title has been changed"

# Save to file
doc.SaveToFile("output/Updated.docx", FileFormat.Docx2019)

Python: Create, Read, or Update a Word Document

Richiedi una licenza temporanea

Se desideri rimuovere il messaggio di valutazione dai documenti generati o eliminare le limitazioni della funzione, per favore richiedere una licenza di prova di 30 giorni per te.

Guarda anche