Jako vývojář Pythonu možná budete muset upravovat dokumenty Wordu nebo Excelu programově. Tyto dokumenty můžete aktualizovat bez instalace jakékoli externí aplikace. Tento článek se zaměří na to, jak upravovat dokumenty Wordu nebo Excelu pomocí REST API.

Tento článek bude obsahovat následující témata:

Editor dokumentů REST API a Python SDK

Skupina cloudových produktů GroupDocs.Editor

Pro úpravy dokumentů aplikace Word nebo listů aplikace Excel budu používat Python SDK of GroupDocs.Editor Cloud API. Umožňuje vám programově upravovat dokumenty pro zpracování textu, listy aplikace Excel nebo dokumenty jiných podporovaných formátů. Poskytuje také .NET, Java, PHP, Ruby, Android a Node.js SDK jako členové rodiny editorů dokumentů pro Cloud API.

GroupDocs.Editor-Cloud můžete nainstalovat do svého projektu Python pomocí následujícího příkazu v konzole:

pip install groupdocs_editor_cloud

Než začnete postupovat podle kroků a dostupných příkladů kódu, získejte své ID klienta a tajný klíč klienta z dashboard. Přidejte své ID a tajemství do kódu, jak je ukázáno níže:

client_id = "YOUR_CLIENT_ID"
client_secret = "YOUR_CLIENT_SECRET"

configuration = groupdocs_editor_cloud.Configuration(client_id, client_secret)
configuration.api_base_url = "https://api.groupdocs.cloud"

Upravte dokument Word pomocí REST API

Dokument Word můžete upravit podle jednoduchých kroků uvedených níže:

Nahrajte dokument

Nejprve nahrajte dokument Word do cloudu pomocí níže uvedeného příkladu kódu:

storage_api = groupdocs_editor_cloud.StorageApi.from_config(config_info)
file_api = groupdocs_editor_cloud.FileApi.from_config(config_info)

# nahrát ukázkový soubor
files = glob.glob("C:\\Files\\sample_word_document.docx", recursive=False)
destination_file = files[0].replace("C:\\Files\\", "", 1)
file_api.upload_file(groupdocs_editor_cloud.UploadFileRequest(destination_file, files[0]))

V důsledku toho bude soubor aplikace Word nahrán do cloudového úložiště a bude k dispozici v sekci souborů na vašem řídicím panelu.

Upravte dokument Word v Pythonu

Chcete-li programově upravit dokument aplikace Word, postupujte podle kroků uvedených níže.

  • Vytvořte instance File API a Edit API
  • Poskytněte WordProcessingLoadOptions
  • Načtěte soubor pomocí metody Load Edit API
  • Stáhněte si HTML dokument pomocí metody File API Download File
  • Upravit dokument HTML
  • Nahrajte HTML zpět pomocí metody File API Upload File
  • Poskytněte možnosti WordProcessingSaveOptions pro uložení v DOCX
  • Uložte HTML zpět do DOCX pomocí metody Save Edit API

Následující fragment kódu ukazuje, jak aktualizovat dokument aplikace Word pomocí rozhraní REST API.

# Vytvořte potřebné instance API
edit_api = groupdocs_editor_cloud.EditApi.from_config(configurations)
file_api = groupdocs_editor_cloud.FileApi.from_config(configuration)

# Dokument již byl nahrán do úložiště.
# Načtěte jej do upravitelného stavu
file_info = groupdocs_editor_cloud.FileInfo("sample_word_document.docx", None, None, None)
load_options = groupdocs_editor_cloud.WordProcessingLoadOptions()
load_options.file_info = file_info
load_options.output_path = "output"
load_result = edit_api.load(groupdocs_editor_cloud.LoadRequest(load_options))

# Stáhněte si html dokument
html_file = file_api.download_file(groupdocs_editor_cloud.DownloadFileRequest(load_result.html_path))
html = ""
with open(html_file, 'r') as file:
    html = file.read()

# Upravit něco...
html = html.replace("Sample test text", "Hello world")

# Nahrajte html zpět do úložiště
with open(html_file, 'w') as file:
    file.write(html)

file_api.upload_file(groupdocs_editor_cloud.UploadFileRequest(load_result.html_path, html_file))

# Uložit html zpět do docx
save_options = groupdocs_editor_cloud.WordProcessingSaveOptions()
save_options.file_info = file_info
save_options.output_path = "output/edited.docx"
save_options.html_path = load_result.html_path
save_options.resources_path = load_result.resources_path
save_result = edit_api.save(groupdocs_editor_cloud.SaveRequest(save_options))

# Hotovo
print("Document edited: " + save_result.path)

Stáhněte si aktualizovaný soubor

Výše uvedená ukázka kódu uloží upravený soubor aplikace Word do cloudu. Můžete si jej stáhnout pomocí následující ukázky kódu:

request = groupdocs_editor_cloud.DownloadFileRequest("output\\edited.docx", my_storage)
response = file_api.download_file(request)

# Přesuňte stažený soubor do svého pracovního adresáře
shutil.move(response, "C:\\Files\\")

Upravte list aplikace Excel pomocí rozhraní REST API

Chcete-li upravit list Excelu programově, postupujte podle níže uvedených kroků.

  • Vytvořte instance File API a Edit API
  • Poskytněte možnosti SpreadsheetLoadOptions
  • Načtěte soubor pomocí metody Load Edit API
  • Stáhněte si HTML dokument pomocí metody File API Download File
  • Upravit dokument HTML
  • Nahrajte HTML zpět pomocí metody File API Upload File
  • Poskytněte možnosti SpreadsheetSaveOptions pro uložení ve formátu XLSX
  • Uložte HTML zpět do XLSX pomocí metody Save Edit API

Níže uvedený jednoduchý příklad kódu ukazuje, jak aktualizovat list aplikace Excel pomocí rozhraní REST API. Chcete-li nahrát a stáhnout soubor, postupujte podle výše uvedených kroků.

# Vytvořte potřebné instance API
edit_api = groupdocs_editor_cloud.EditApi.from_config(configurations)
file_api = groupdocs_editor_cloud.FileApi.from_config(configurations)

# Dokument již byl nahrán do úložiště.
# Načtěte jej do upravitelného stavu
file_info = groupdocs_editor_cloud.FileInfo("sample_four_sheets.xlsx")
load_options = groupdocs_editor_cloud.SpreadsheetLoadOptions()
load_options.file_info = file_info
load_options.output_path = "output"
load_options.worksheet_index = 0
load_result = edit_api.load(groupdocs_editor_cloud.LoadRequest(load_options))

# Stáhněte si html dokument
html_file = file_api.download_file(groupdocs_editor_cloud.DownloadFileRequest(load_result.html_path))
html = ""
with open(html_file, 'r') as file:
    html = file.read()

# Upravit něco...
html = html.replace("This is sample sheet", "This is sample sheep")

# Nahrajte html zpět do úložiště
with open(html_file, 'w') as file:
    file.write(html)

file_api.upload_file(groupdocs_editor_cloud.UploadFileRequest(load_result.html_path, html_file))

# Uložit html zpět do xlsx
save_options = groupdocs_editor_cloud.SpreadsheetSaveOptions()
save_options.file_info = file_info
save_options.output_path = "output/edited.xlsx"
save_options.html_path = load_result.html_path
save_options.resources_path = load_result.resources_path
save_result = edit_api.save(groupdocs_editor_cloud.SaveRequest(save_options))

# Hotovo
print("Excel sheet edited: " + save_result.path)

Závěr

V tomto článku jste se naučili, jak upravovat dokumenty Wordu nebo listy Excelu v cloudu pomocí REST API Editoru dokumentů pomocí Pythonu. Také jste se naučili, jak programově nahrát soubory do cloudu a poté stáhnout aktualizované soubory z cloudu. Více o GroupDocs.Editor Cloud API se můžete dozvědět pomocí dokumentace. Poskytujeme také sekci API Reference, která vám umožní vizualizovat naše API a pracovat s nimi přímo prostřednictvím prohlížeče. V případě jakýchkoliv nejasností nás neváhejte kontaktovat na fóru.

Viz také