Jako vývojář Pythonu můžete programově v cloudu porovnat dva nebo více dokumentů Wordu (.docx) pro podobnosti a rozdíly. Porovnání dokumentů vám pomůže sledovat změny v dokumentech aplikace Word. Tento článek se zaměří na to, jak porovnat dva nebo více dokumentů Word pomocí REST API v Pythonu.
V tomto článku se budou zabývat následujícími tématy:
- Porovnání dokumentů REST API a Python SDK
- Porovnejte dokumenty Word pomocí REST API
- Porovnejte více dokumentů Word pomocí Pythonu
Porovnání dokumentů REST API a Python SDK
Pro porovnání dokumentů Microsoft Word budu používat Python SDK of GroupDocs.Comparison Cloud API. Porovnává dva dokumenty podporovaných formátů souborů a najde mezi nimi rozdíly. Výsledkem je, že vytvoří výsledný soubor obsahující rozdíly a umožní vám přijmout nebo odmítnout načtené změny. Lze jej snadno integrovat do vašich stávajících aplikací Pythonu a umožnit vašim koncovým uživatelům porovnávat dokumenty, tabulky, prezentace, diagramy Microsoft Visio, e-maily a soubory mnoha dalších formátů. Poskytuje také sady .NET, Java, PHP a Ruby SDK jako členové rodiny porovnávání dokumentů pro Cloud API.
GroupDocs.Comparison Cloud můžete nainstalovat do svého projektu Python pomocí pip (instalátor balíčku pro python) pomocí následujícího příkazu v konzole:
pip install groupdocs_comparison_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 = "112f0f38-9dae-42d5-b4fc-cc84ae644972"
client_secret = "16ad3fe0bdc39c910f57d2fd48a5d618"
my_storage = ""
configuration = groupdocs_comparison_cloud.Configuration(client_id, client_secret)
configuration.api_base_url = "https://api.groupdocs.cloud"
Porovnejte dokumenty Word pomocí REST API v Pythonu
Dva dokumenty aplikace Word můžete porovnat pomocí následujících jednoduchých kroků:
- Nahrát soubory DOCX do cloudu
- Porovnejte soubory Word v Pythonu
- Stáhnout výsledný soubor
Nahrajte dokument
Nejprve nahrajte zdrojové a cílové dokumenty Wordu do cloudu pomocí níže uvedeného příkladu kódu:
# inicializace api
file_api = groupdocs_comparison_cloud.FileApi.from_config(configuration)
storage_api = groupdocs_comparison_cloud.StorageApi.from_config(configuration)
# nahrát ukázkové soubory
for filename in glob.iglob("C:\\Files\\*.docx", recursive=True):
destFile = filename.replace("C:\\Files\\", "", 1)
fileExistsResponse = storage_api.object_exists(groupdocs_comparison_cloud.ObjectExistsRequest(destFile))
if not fileExistsResponse.exists:
file_api.upload_file(groupdocs_comparison_cloud.UploadFileRequest(destFile, filename))
print("Uploaded file: "+ destFile)
V důsledku toho budou nahrané soubory DOCX (source.docx, target.docx) dostupné v sekce souborů vašeho řídicího panelu v cloudu.
Porovnejte soubory Word v Pythonu
Chcete-li programově porovnat dva dokumenty aplikace Word, postupujte podle níže uvedených kroků.
- Vytvořte instanci CompareApi
- Nastavte zdrojový soubor .docx
- Nastavte cílový soubor .docx
- Definujte možnosti ComparisonOptions
- Create ComparisonsRequest
- Získejte výsledky voláním metody CompareApi.comparisons()
Následující fragment kódu ukazuje, jak porovnat dva dokumenty aplikace Word pomocí rozhraní REST API.
# Vytvořte potřebné instance API
api_instance = groupdocs_comparison_cloud.CompareApi.from_keys(client_id, client_secret)
source = groupdocs_comparison_cloud.FileInfo()
source.file_path = "source.docx"
target = groupdocs_comparison_cloud.FileInfo()
target.file_path = "target.docx"
options = groupdocs_comparison_cloud.ComparisonOptions()
options.source_file = source
options.target_files = [target]
options.output_path = "Output/result.docx"
request = groupdocs_comparison_cloud.ComparisonsRequest(options)
response = api_instance.comparisons(request)
Můžete zadat heslo pro zdrojové nebo cílové soubory chráněné heslem, jak je uvedeno níže:
target.password = "5784"
Můžete také definovat různá nastavení, která se mají použít během porovnávání, a přiřadit je k ComparisonOptions, jak je uvedeno níže:
settings = groupdocs_comparison_cloud.Settings()
# Porovnejte citlivost
settings.sensitivity_of_comparison = 100
# Přizpůsobte styly změnám
settings.inserted_items_style = groupdocs_comparison_cloud.ItemsStyle()
settings.inserted_items_style.highlight_color = "14297642"
settings.inserted_items_style.font_color = "16711680"
settings.inserted_items_style.underline = True
settings.deleted_items_style = groupdocs_comparison_cloud.ItemsStyle()
settings.deleted_items_style.font_color = "14166746"
settings.deleted_items_style.bold = True
settings.changed_items_style = groupdocs_comparison_cloud.ItemsStyle()
settings.changed_items_style.font_color = "14320170"
settings.changed_items_style.italic = True
options.settings = settings
Stáhněte si výsledný soubor
Výše uvedená ukázka kódu uloží rozdíly do nově vytvořeného souboru DOCX v cloudu. Můžete si jej stáhnout pomocí následující ukázky kódu:
# Vytvořte instanci rozhraní API
file_api = groupdocs_comparison_cloud.FileApi.from_config(configuration)
request = groupdocs_comparison_cloud.DownloadFileRequest("Output\\result.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\\")
Výsledný soubor také obsahuje souhrnnou stránku na konci dokumentu, jak je uvedeno níže:
Porovnejte více souborů Word pomocí Pythonu
Chcete-li porovnat více dokumentů Word pomocí Pythonu, postupujte podle níže uvedených kroků.
- Vytvořte instanci CompareApi
- Nastavte zdrojový soubor .docx
- Nastavte více cílových souborů .docx
- V případě potřeby definujte možnosti ComparisonOptions
- Create ComparisonsRequest
- Výsledky získáte voláním metody CompareApi.comparisons()
Následující fragment kódu ukazuje, jak porovnat více dokumentů Word pomocí Pythonu. Chcete-li nahrát více souborů DOCX, postupujte podle výše uvedených kroků.
# Vytvořte potřebné instance API
api_instance = groupdocs_comparison_cloud.CompareApi.from_keys(client_id, client_secret)
source = groupdocs_comparison_cloud.FileInfo()
source.file_path = "source.docx"
target1 = groupdocs_comparison_cloud.FileInfo()
target1.file_path = "target.docx"
target2 = groupdocs_comparison_cloud.FileInfo()
target2.file_path = "target2.docx"
options = groupdocs_comparison_cloud.ComparisonOptions()
options.source_file = source
options.target_files = [target1, target2]
options.output_path = "Output/result.docx"
request = groupdocs_comparison_cloud.ComparisonsRequest(options)
response = api_instance.comparisons(request)
Vyzkoušejte prosím následující bezplatný online srovnávací nástroj DOCX, který je vyvinut pomocí výše uvedeného API. https://products.groupdocs.app/comparison/docx
Závěr
V tomto článku jste se naučili porovnat dokumenty Microsoft Word v cloudu s REST API pro porovnání dokumentů pomocí Pythonu. Také jste se naučili, jak programově nahrát dva nebo více souborů do cloudu a následně stáhnout výsledný soubor z cloudu. Více o GroupDocs.Comparison Cloud API se můžete dozvědět pomocí dokumentace. Poskytujeme také sekci API Reference, která vám umožní vizualizovat a pracovat s našimi API přímo prostřednictvím prohlížeče. V případě jakýchkoliv nejasností nás neváhejte kontaktovat na fóru.