Automatyzacja słów w Python

Możemy zautomatyzować MS Word, aby tworzyć nowe dokumenty Word (DOC lub DOCX), edytować lub modyfikować istniejące lub konwertować je do innych formatów bez korzystania z pakietu Microsoft Office. Automatyzacja MS Word w Python pozwala programowo wykonywać wszystkie czynności, które możemy wykonać za pośrednictwem interfejsu użytkownika MS Word. W tym artykule dowiemy się, jak zautomatyzować MS Word, aby tworzyć, edytować lub konwertować dokumenty Word za pomocą Python.

W tym artykule opisano wszystkie podstawowe funkcje wymagane do programistycznego generowania dokumentów programu Word i manipulowania nimi przy użyciu języka Python. Ten artykuł zawiera następujące tematy:

Python MS Word Automation API do tworzenia, edytowania lub konwertowania dokumentów Word

Do automatyzacji Worda użyjemy API Aspose.Words for Python. Jest to kompletne i bogate w funkcje rozwiązanie do automatyzacji programu Word do programistycznego tworzenia, edytowania lub analizowania dokumentów programu Word. Klasa Document interfejsu API reprezentuje dokument programu Word. Interfejs API udostępnia klasę DocumentBuilder, która oferuje różne metody wstawiania tekstu, obrazów i innej zawartości do dokumentu. Ta klasa umożliwia również określenie formatowania czcionki, akapitu i sekcji. Klasa Run interfejsu API reprezentuje ciąg znaków z tym samym formatowaniem czcionki. Zainstaluj bibliotekę w swojej aplikacji Python z PyPI za pomocą następującego polecenia pip.

pip install aspose-words

Twórz dokumenty Word za pomocą Python

Możemy programowo tworzyć dokumenty Word, wykonując czynności podane poniżej:

  • Najpierw utwórz instancję klasy Document.
  • Następnie utwórz instancję klasy DocumentBuilder z obiektem Document jako argumentem.
  • Następnie wstaw/zapisz elementy, aby dodać tekst, akapity, tabele lub obrazy za pomocą obiektu DocumentBuilder.
  • Na koniec wywołaj metodę save() ze ścieżką pliku wyjściowego jako argumentem, aby zapisać utworzony plik.

Poniższy przykładowy kod pokazuje, jak utworzyć dokument programu Word (DOCX) przy użyciu języka Python.

import aspose.words as aw

# Ten przykład kodu demonstruje, jak utworzyć nowy dokument programu Word przy użyciu języka Python.
# Utwórz obiekt dokumentu
doc = aw.Document()

# Utwórz obiekt konstruktora dokumentów
builder = aw.DocumentBuilder(doc)

# Określ formatowanie czcionki Czcionka
font = builder.font
font.size = 32
font.bold = True
font.name = "Arial"
font.underline = aw.Underline.SINGLE

# Wstaw tekst
builder.writeln("Welcome")
builder.writeln()

# Ustaw formatowanie akapitu
font.size = 14
font.bold = False
font.name = "Arial"
font.underline = aw.Underline.NONE

paragraphFormat = builder.paragraph_format
paragraphFormat.first_line_indent = 8
paragraphFormat.alignment = aw.ParagraphAlignment.JUSTIFY
paragraphFormat.keep_together = True

# Wstaw akapit
builder.writeln('''Aspose.Words for Python is a class library that enables your applications to perform a great range of document processing tasks. 
    It supports most of the popular document formats such as DOC, DOCX, RTF, HTML, Markdown, PDF, XPS, EPUB, and others. 
    With the API, you can generate, modify, convert, render, and print documents without third-party applications or Office Automation.
''')
builder.writeln()

# Wstaw tabelę
font.bold = True
builder.writeln("This is a sample table")
font.bold = False

# Tabela startowa
table = builder.start_table()

# Wstaw komórkę
builder.insert_cell()
table.auto_fit(aw.tables.AutoFitBehavior.AUTO_FIT_TO_CONTENTS)

# Ustaw formatowanie i dodaj tekst
builder.cell_format.vertical_alignment = aw.tables.CellVerticalAlignment.CENTER

builder.write("Row 1 cell 1")
builder.insert_cell()
builder.write("Row 1 cell 2")
builder.end_row()

builder.insert_cell()
builder.write("Row 2 cell 1")
builder.insert_cell()
builder.write("Row 2 cell 2")
builder.end_row()

# Stół końcowy
builder.end_table()
builder.writeln()

# Umieść obraz
builder.insert_image("C:\\Files\\aspose-icon.png")

# Zapisz dokument
doc.save("C:\\Files\\sample_output.docx")
Twórz dokumenty Worda

Twórz dokumenty Word za pomocą Python.

Edytuj lub modyfikuj dokumenty Word za pomocą Python

W poprzedniej sekcji stworzyliśmy dokument programu Word. Teraz edytujmy go i zmieńmy zawartość dokumentu. Możemy edytować dokumenty Word, wykonując czynności podane poniżej:

  • Najpierw załaduj istniejący dokument programu Word, używając klasy Document.
  • Następnie uzyskaj dostęp do określonej sekcji według jej indeksu.
  • Następnie uzyskaj dostęp do treści pierwszego akapitu jako obiektu klasy Run.
  • Następnie ustaw tekst do aktualizacji dla dostępnego akapitu.
  • Na koniec wywołaj metodę save() ze ścieżką do pliku wyjściowego, aby zapisać zaktualizowany plik.

Poniższy przykładowy kod pokazuje, jak edytować dokument programu Word (DOCX) przy użyciu języka Python.

import aspose.words as aw

# Ten przykład kodu demonstruje, jak edytować istniejący dokument programu Word.
# Załaduj dokument
doc = aw.Document("C:\\Files\\sample_output.docx")

# Zainicjuj konstruktora dokumentów
builder = aw.DocumentBuilder(doc)

# Uzyskaj dostęp do akapitu
paragraph = doc.sections[0].body.paragraphs[0].runs[0]
paragraph.text = "This is an updated text!"

# Zapisz dokument
doc.save("C:\\Files\\sample_updated.docx")
Edytuj lub modyfikuj dokumenty programu Word

Edytuj lub modyfikuj dokumenty Word za pomocą Python.

Znajdź i zamień tekst w dokumentach programu Word za pomocą Python

Możemy również znaleźć dowolny tekst i zastąpić go nowym tekstem, wykonując czynności podane poniżej:

  • Najpierw załaduj dokument programu Word, używając klasy Document.
  • Następnie utwórz instancję klasy FindReplaceOptions.
  • Następnie wywołaj metodę replace(). Pobiera wyszukiwany ciąg, ciąg zastępujący i obiekt FindReplaceOptions jako argumenty.
  • Na koniec wywołaj metodę save() ze ścieżką do pliku wyjściowego, aby zapisać zaktualizowany plik.

Poniższy przykładowy kod pokazuje, jak znaleźć i zamienić określony tekst w dokumencie programu Word (DOCX) przy użyciu języka Python.

import aspose.words as aw

# Ten przykład kodu demonstruje, jak znaleźć i zamienić tekst w dokumencie programu Word.
# Załaduj dokument
doc = aw.Document("C:\\Files\\sample_output.docx")

# Zaktualizuj za pomocą funkcji Znajdź i zamień
# Określ wyszukiwany ciąg i zastąp ciąg przy użyciu metody Replace.
doc.range.replace("Aspose.Words", "Hello", 
    aw.replacing.FindReplaceOptions(aw.replacing.FindReplaceDirection.FORWARD))

# Zapisz dokument
doc.save("C:\\Files\\find_and_replace.docx")
Znajdź i zamień tekst w dokumentach programu Word

Znajdź i zamień tekst w dokumentach programu Word.

Konwertuj dokumenty Word za pomocą Python

Możemy konwertować dokumenty Word do innych formatów, takich jak PDF, XPS, EPUB, HTML, JPG, PNG itp. Wykonaj poniższe czynności, aby przekonwertować dokument Word na stronę HTML:

  • Najpierw załaduj dokument programu Word, używając klasy Document.
  • Następnie utwórz wystąpienie klasy HtmlSaveOptions z obiektem Document jako argumentem.
  • Następnie określ właściwości cssstylesheettype, exportfontresources, resourcefolder i alias.
  • Na koniec wywołaj metodę save() ze ścieżką pliku wyjściowego i obiektem HtmlSaveOptions jako argumentami, aby zapisać przekonwertowany plik HTML.

Poniższy przykładowy kod pokazuje, jak przekonwertować dokument programu Word (DOCX) na format HTML przy użyciu języka Python.

import aspose.words as aw

# Ten przykład kodu demonstruje, jak przekonwertować dokument programu Word na format PDF.
# Załaduj istniejący dokument programu Word
doc = aw.Document("C:\\Files\\sample_output.docx")

# Określ opcje zapisu
saveOptions = aw.saving.HtmlSaveOptions()
saveOptions.css_style_sheet_type = aw.saving.CssStyleSheetType.EXTERNAL
saveOptions.export_font_resources = True
saveOptions.resource_folder = "C:\\Files\\Resources"
saveOptions.resource_folder_alias = "C:/Files/resources"

# Zapisz przekonwertowany dokument
doc.save("C:\\Files\\Converted.html", saveOptions)

Podobnie możemy również konwertować dokumenty Word do innych obsługiwanych formatów. Przeczytaj więcej o tym, jak przekonwertować Word na EPUB, Word na PDF, Dokument Word na Markdown, Word na JPG lub obrazy PNG w dokumentacji .

Analizuj dokumenty Worda za pomocą Python

Możemy analizować dokumenty programu Word i wyodrębniać zawartość jako zwykły tekst, wykonując czynności podane poniżej:

  • Najpierw załaduj dokument programu Word, używając klasy Document.
  • Następnie wyodrębnij i wydrukuj tekst.
  • Na koniec wywołaj metodę save(), aby zapisać dokument programu Word jako plik tekstowy. Ta metoda przyjmuje ścieżkę pliku wyjściowego jako argument.

Poniższy przykładowy kod pokazuje, jak analizować dokument programu Word (DOCX) przy użyciu języka Python.

import aspose.words as aw

# Ten przykład kodu demonstruje, jak analizować dokument programu Word.
# Załaduj dokument
doc = aw.Document("C:\\Files\\Sample.docx")

# Wyodrębnij tekst
print(doc.range.text)

# Zapisz jako zwykły tekst
doc.save("C:\\Files\\output.txt")

Uzyskaj bezpłatną licencję

Możesz uzyskać bezpłatną tymczasową licencję, aby wypróbować bibliotekę bez ograniczeń ewaluacyjnych.

Wniosek

W tym artykule dowiedzieliśmy się, jak:

  • zautomatyzować MS Word za pomocą Python;
  • programowo tworzyć i edytować dokumenty Word;
  • analizować lub konwertować pliki DOCX;
  • znaleźć i zamienić tekst w dokumentach programu Word przy użyciu języka Python.

Poza tym możesz dowiedzieć się więcej o Aspose.Words for Python API korzystając z dokumentacji. W przypadku jakichkolwiek niejasności prosimy o kontakt na forum.

Zobacz też