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.
- 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"
- 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"
- 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"
- 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
- 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. Acompare_documentAPI 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.