Két Word fájl közötti különbségek észlelése gyakori igény a szerződésekkel, jelentésekkel vagy jogi dokumentumokkal dolgozó fejlesztők számára. Az Aspose.BarCode Cloud SDK for Python egy erőteljes könyvtárat biztosít, amely kombinálható az Aspose.Words Cloud SDK for Python-nal a Word dokumentumok szövegének programozott összehasonlításához Pythonban. Ebben az útmutatóban beállítja a környezetet, feltölti a dokumentumokat az Aspose Cloud tárolóba, konfigurálja az összehasonlítási beállításokat, elvégzi az összehasonlítást, és lekéri a nyomkövetett változtatásokat tartalmazó eredménydokumentumot. Meg fogja látni, hogyan érhető el ugyanaz az eredmény közvetlen REST hívásokkal cURL segítségével.

Környezet előkészítése - Előfeltételek és beállítás

Mielőtt elkezdené, győződjön meg arról, hogy a következőkkel rendelkezik:

  • Python 3.8 vagy újabb helyileg telepítve.
  • Aspose Cloud fiók client_id és client_secret értékekkel (elérhető az Aspose Cloud irányítópulton).
  • Hozzáférés az Aspose Cloud tárolóhoz az ideiglenes fájlkezeléshez.

Telepítse a BarCode SDK-t pip használatával:

pip install aspose-barcode-cloud

Ehhez szüksége lesz az Aspose.Words Cloud SDK for Python-ra, amely a Word‑specifikus műveleteket kezeli:

pip install asposewordscloud

Állítsa be a hitelesítő adatait környezeti változóként, vagy cserélje le a helyőrzőket a kódban:

import os
client_id = os.getenv("ASPOSE_CLIENT_ID")
client_secret = os.getenv("ASPOSE_CLIENT_SECRET")

Az SDK-k ezeket az értékeket fogják használni az Aspose Cloud szolgáltatások hitelesítéséhez. Miután a környezet készen áll, áttérhetünk a megvalósításra.

Szöveg összehasonlítása Word dokumentumokban Pythonban: Lépésről lépésre útmutató

1. lépés: A forrásdokumentum betöltése

Először konfigurálja az Aspose Cloud hitelesítő adatait, hogy az SDK hitelesíthessen, és össze tudja hasonlítani a szöveget a Word dokumentumokban Pythonban.

from asposewordscloud import WordsApi, Configuration

config = Configuration(client_id=client_id, client_secret=client_secret)
words_api = WordsApi(config)

2. lépés: Forrás‑ és cél dokumentumok feltöltése

Töltsd fel a két DOCX fájlt, amelyet össze szeretnél hasonlítani. A segítő függvény elrejti a feltöltési folyamatot.

def upload(local_file, remote_name):
    with open(local_file, "rb") as f:
        words_api.upload_file(request={"path": f"TempCompare/{remote_name}", "file": f})

upload("doc1.docx", "doc1.docx")
upload("doc2.docx", "doc2.docx")

3. lépés: Összehasonlítási beállítások

Ezután állítsa be a CompareOptions-t, hogy meghatározza, hogyan hasonlítsa össze a SDK a Word dokumentumok szövegét Pythonban, például a kis- és nagybetűk figyelmen kívül hagyásával vagy a megjegyzésekkel.

from asposewordscloud.models import CompareOptions

compare_opts = CompareOptions(
    author="PythonComparer",
    compare_options="IgnoreCase,IgnoreComments,IgnoreFormatting",
    file_path="TempCompare/doc2.docx",
    revision_author="PythonComparer",
    revision_date_time="2023-01-01T00:00:00Z"
)

4. lépés: Dokumentum összehasonlítás végrehajtása

Most hívja meg a compare_document metódust, hogy ténylegesen összehasonlítsa a szöveget a Word dokumentumokban Pythonban, és létrehozzon egy revíziókövetett eredményt.

compare_result = words_api.compare_document(
    request={
        "name": "doc1.docx",
        "compare_data": compare_opts,
        "folder": "TempCompare"
    }
)

5. lépés: Az eredmény lekérése és mentése

Végül írja a létrehozott dokumentumot a lemezre, és tisztítsa meg az ideiglenes fájlokat.

with open("compare_result.docx", "wb") as out_file:
    out_file.write(compare_result.document)

words_api.delete_file(request={"path": "TempCompare/doc1.docx"})
words_api.delete_file(request={"path": "TempCompare/doc2.docx"})

Szöveg összehasonlítása Word dokumentumokban Pythonban - Teljes megvalósítás - Komplett kódpélda

Az alábbi kód bemutatja a teljes munkafolyamatot a Word dokumentumok szövegének Pythonban történő összehasonlításához az Aspose API-k használatával.

import os
from asposewordscloud import WordsApi, Configuration
from asposewordscloud.models import CompareOptions

# ----------------------------------------------------------------------
# Konfiguráció – állítsa be az Aspose Cloud hitelesítő adatait környezeti változókban
# ----------------------------------------------------------------------
client_id = os.getenv("ASPOSE_CLIENT_ID")
client_secret = os.getenv("ASPOSE_CLIENT_SECRET")
config = Configuration(client_id=client_id, client_secret=client_secret)

# ----------------------------------------------------------------------
# Inicializálja a Words API klienset
# ----------------------------------------------------------------------
words_api = WordsApi(config)

# ----------------------------------------------------------------------
# Helyi fájl útvonalak (cserélje le a saját fájljaira)
# ----------------------------------------------------------------------
source_path = "doc1.docx"
target_path = "doc2.docx"
result_path = "compare_result.docx"

# ----------------------------------------------------------------------
# Távoli mappa az Aspose Cloud tárolóban, ahol az ideiglenes fájlok tárolódnak
# ----------------------------------------------------------------------
remote_folder = "TempCompare"

# ----------------------------------------------------------------------
# Segédprogram egy helyi fájl feltöltéséhez az Aspose Cloud tárolóba
# ----------------------------------------------------------------------
def upload(local_file, remote_name):
    with open(local_file, "rb") as f:
        words_api.upload_file(request={"path": f"{remote_folder}/{remote_name}", "file": f})

# ----------------------------------------------------------------------
# Forrás- és cél dokumentumok feltöltése
# ----------------------------------------------------------------------
upload(source_path, source_path)
upload(target_path, target_path)

# ----------------------------------------------------------------------
# Állítsa be az összehasonlítási opciókat
# ----------------------------------------------------------------------
compare_opts = CompareOptions(
    author="PythonComparer",
    compare_options="IgnoreCase,IgnoreComments,IgnoreFormatting",
    file_path=f"{remote_folder}/{target_path}",
    revision_author="PythonComparer",
    revision_date_time="2023-01-01T00:00:00Z"
)

# ----------------------------------------------------------------------
# Az összehasonlítás végrehajtása
# ----------------------------------------------------------------------
try:
    compare_result = words_api.compare_document(
        request={
            "name": source_path,
            "compare_data": compare_opts,
            "folder": remote_folder
        }
    )
    # Az API a kapott dokumentumot bájt tömbként adja vissza
    with open(result_path, "wb") as out_file:
        out_file.write(compare_result.document)
finally:
    # ------------------------------------------------------------------
    # Távoli ideiglenes fájlok törlése
    # ------------------------------------------------------------------
    words_api.delete_file(request={"path": f"{remote_folder}/{source_path}"})
    words_api.delete_file(request={"path": f"{remote_folder}/{target_path}"})

Megjegyzés: Ez a kódpélda bemutatja az alapvető funkcionalitást. Mielőtt a projektjében használná, győződjön meg róla, hogy frissíti az összes fájlútvonalat és konfigurációs értéket, hogy azok megfeleljenek a tényleges környezetének, ellenőrizze, hogy minden szükséges függőség megfelelően telepítve van, és alaposan tesztelje a fejlesztői környezetben. Ha bármilyen problémába ütközik, kérjük, tekintse meg a hivatalos dokumentációt vagy lépjen kapcsolatba a támogatói csapattal segítségért.

Dokumentum összehasonlítás végrehajtása REST API-n keresztül cURL használatával

Az alábbiakban cURL parancsok találhatók, amelyek ugyanazt a szövegösszehasonlítást végzik Word dokumentumokban Python művelettel a REST API-n keresztül.

  1. Hitelesítés és hozzáférési token lekérése
curl -X POST "https://api.aspose.cloud/connect/token" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET"
  1. Töltse fel a forrásfájlt
curl -X PUT "https://api.aspose.cloud/v4.0/words/TempCompare/doc1.docx" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/octet-stream" \
  --data-binary "@doc1.docx"
  1. Töltsd fel a célfájlt
curl -X PUT "https://api.aspose.cloud/v4.0/words/TempCompare/doc2.docx" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/octet-stream" \
  --data-binary "@doc2.docx"
  1. Az összehasonlítás végrehajtása
curl -X POST "https://api.aspose.cloud/v4.0/words/doc1.docx/compare" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
        "compareOptions": {
            "author": "PythonComparer",
            "compareOptions": "IgnoreCase,IgnoreComments,IgnoreFormatting",
            "filePath": "TempCompare/doc2.docx",
            "revisionAuthor": "PythonComparer",
            "revisionDateTime": "2023-01-01T00:00:00Z"
        }
      }' -o compare_result.docx
  1. Töltse le a kimeneti fájlt
curl -X GET "https://api.aspose.cloud/v4.0/words/TempCompare/compare_result.docx" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -o compare_result.docx

A kérés testekre és további paraméterekre vonatkozó részletekért tekintse meg a hivatalos API dokumentációt.

Összegzés

Ez a cikk bemutatja, hogyan lehet szöveget összehasonlítani Word dokumentumokban Python használatával az Aspose.BarCode Cloud SDK for Python segítségével. A hitelesítő adatok beállításával, fájlok feltöltésével, az összehasonlítási beállítások konfigurálásával és a compare API meghívásával automatizálhatja a dokumentum‑diff munkafolyamatokat alkalmazásaiban. Ne feledje, hogy a termelési használathoz megfelelő licencet kell beszerezni; ideiglenes licenc elérhető a ideiglenes licenc oldal oldalon, és a teljes licencelési részletek a termékoldalon találhatók. Ezekkel az eszközökkel a dokumentum‑összehasonlítás integrálása Python projektjeibe egyszerű és megbízható lesz.

GYIK

  • Hogyan segít az Aspose.BarCode Cloud SDK for Python a Word dokumentumok szövegének összehasonlításában Pythonban?
    Az SDK együttműködik az Aspose.Words Cloud SDK for Python-nal, hogy DOCX fájlokat töltsön fel, beállítsa az összehasonlítási lehetőségeket, és egy revíziókövetett eredményt generáljon, amely kiemeli a különbségeket. Tekintse meg az Aspose.BarCode Cloud SDK for Python termékoldalt a részletekért.

  • Össze tudok hasonlítani nagy Word fájlokat hatékonyan?
    Igen. A compare_document API használatával nagy DOCX fájlokat streamelhet az Aspose Cloud tárolóból, és a szolgáltatás a szerver oldalon dolgozza fel őket, ezáltal minimalizálva a gép memóriájának használatát. Tekintse meg a hivatalos dokumentációt a teljesítmény tippekért.

  • Milyen fájlformátumok támogatottak az összehasonlításhoz?
    Az API elsősorban DOCX fájlokkal működik, de a DOC fájlokat is összehasonlíthatja, miután azokat az Aspose.Words segítségével DOCX formátumba konvertálták. Minden formátumnév nagybetűvel íródik, például DOCX, PDF.

  • Szükségem van licencre a termelésben való futtatáshoz?
    Ideiglenes licenc elérhető a ideiglenes licenc oldal. A termelésben való használathoz teljes licencet kell vásárolni, ahogy a termékoldalon le van írva.

További információk