مقایسه فایل های اکسل با استفاده از REST API در پایتون.

مقایسه داده ها در فایل های اکسل با استفاده از REST API در پایتون

اکسل یکی از محبوب ترین و پرکاربردترین برنامه های صفحه گسترده است. این امکان سازماندهی، تجزیه و تحلیل، محاسبه و ذخیره داده ها را به صورت جدولی فراهم می کند. مقایسه داده‌های فایل‌های xlsx از دو فایل اکسل مختلف یا چندین نسخه از یک فایل یک نیاز بسیار رایج است. ما به راحتی می توانیم دو صفحه گسترده یا چند فایل اکسل را برای ردیابی تغییرات و برجسته کردن تفاوت ها در یک فایل جدید مقایسه کنیم. در این مقاله یاد می گیریم که چگونه فایل های اکسل را با استفاده از REST API در پایتون مقایسه کنیم.

موضوعات زیر برای مقایسه صفحه گسترده در این مقاله پوشش داده می شود:

REST API و Python SDK برای مقایسه فایل‌های اکسل

برای مقایسه دو یا چند فایل XLSX، از Python SDK of GroupDocs.Comparison Cloud API استفاده خواهیم کرد. این امکان مقایسه دو یا چند سند از [فرمت‌های پشتیبانی‌شده3 را فراهم می‌کند و تفاوت‌های موجود در فایل حاصل را برجسته می‌کند. لطفا با استفاده از دستور زیر در کنسول آن را نصب کنید:

pip install groupdocs-comparison-cloud

لطفاً قبل از انجام مراحل ذکر شده [شناسه مشتری و راز خود را از داشبورد 4 دریافت کنید. هنگامی که شناسه و راز خود را دریافت کردید، کد را مطابق شکل زیر اضافه کنید:

# این مثال کد نشان می دهد که چگونه شناسه مشتری و مخفی را در کد اضافه کنید.
client_id = '659fe7da-715b-4744-a0f7-cf469a392b73';
client_secret = 'b377c36cfa28fa69960ebac6b6e36421';

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

مقایسه دو فایل اکسل با استفاده از پایتون

با دنبال کردن مراحل ساده زیر می‌توانیم دو فایل اکسل را در پایتون در فضای ابری مقایسه کنیم:

  1. آپلود فایل‌های XLSX را در ابر.
  2. مقایسه فایل‌های اکسل آپلود شده.
  3. دانلود فایل حاصل.

فایل های اکسل را آپلود کنید

ابتدا فایل های XLSX منبع و هدف را با استفاده از نمونه کد زیر در فضای ابری آپلود می کنیم:

# این مثال کد نحوه آپلود چندین فایل اکسل را در فضای ابری نشان می دهد.
# نمونه ای از API ایجاد کنید
file_api = groupdocs_comparison_cloud.FileApi.from_config(configuration)

# فایل های نمونه را آپلود کنید
for filename in glob.iglob("C:\\Files\\comparison\\upload\\*.xlsx", recursive=True):
    destFile = filename.replace("C:\\Files\\comparison\\upload\\", "",1)           
    file_api.upload_file(groupdocs_comparison_cloud.UploadFileRequest(destFile, filename))
    print("Uploaded file: "+ destFile)

در نتیجه، فایل‌های اکسل آپلود شده در بخش فایل‌ها داشبورد در فضای ابری در دسترس خواهند بود.

مقایسه فایل های اکسل برای تفاوت در پایتون

اکنون فایل های اکسل آپلود شده را به صورت برنامه نویسی با انجام مراحل زیر مقایسه می کنیم:

  • ابتدا یک نمونه از CompareApi ایجاد کنید.
  • سپس، منبع آپلود شده و مسیرهای فایل ورودی XLSX را تعیین کنید.
  • سپس، شی ComparisonOptions را مقداردهی اولیه کنید و فایل های منبع و مقصد را تعیین کنید.
  • سپس مسیر فایل خروجی را تنظیم کنید.
  • پس از آن، ComparisonsRequest را با ComparisonOptions به عنوان آرگومان ایجاد کنید.
  • در نهایت اسناد اکسل را با هم مقایسه کنید و با استفاده از روش comparisons() به نتیجه برسید.

نمونه کد زیر نحوه مقایسه صفحات اکسل آنلاین با استفاده از REST API در پایتون را نشان می دهد.

# این مثال کد نحوه مقایسه دو فایل اکسل را نشان می دهد.
# نمونه های API لازم را ایجاد کنید
api_instance = groupdocs_comparison_cloud.CompareApi.from_keys(client_id, client_secret)

# فایل منبع ورودی
source = groupdocs_comparison_cloud.FileInfo()
source.file_path = "source.xlsx"

# فایل هدف را وارد کنید
target = groupdocs_comparison_cloud.FileInfo()
target.file_path = "target.xlsx"

# گزینه های مقایسه را تعریف کنید
options = groupdocs_comparison_cloud.ComparisonOptions()
options.source_file = source
options.target_files = [target]
options.output_path = "result.xlsx"

# ایجاد درخواست مقایسه
request = groupdocs_comparison_cloud.ComparisonsRequest(options)

# مقایسه کنید
response = api_instance.comparisons(request)
نحوه مقایسه داده ها در اکسل و مقایسه چندین فایل اکسل

فایل های اکسل را منبع و هدف قرار دهید.

2 فایل اکسل را با استفاده از REST API در پایتون مقایسه کنید.

اکسل دو برگه را در پایتون با استفاده از REST API مقایسه می کند.

فایل نتیجه را دانلود کنید

در نتیجه، نمونه کد بالا یک فایل اکسل جدید ایجاد شده را با مقایسه صفحه گسترده در فضای ابری ذخیره می کند. با استفاده از نمونه کد زیر قابل دانلود است:

# این مثال کد نحوه دانلود فایل اکسل را از فضای ابری نشان می دهد.
# نمونه ای از API ایجاد کنید
file_api = groupdocs_comparison_cloud.FileApi.from_config(configuration)

# درخواست دانلود فایل
request = groupdocs_comparison_cloud.DownloadFileRequest("result.xlsx", "")

# دریافت فایل
response = file_api.download_file(request)

# فایل دانلود شده را به دایرکتوری کاری خود منتقل کنید
shutil.move(response, "C:\\Files\\comparison\\")  

مقایسه چندین فایل اکسل در پایتون

همچنین می‌توانیم برگه‌های اکسل را برای تفاوت‌ها با دنبال کردن مراحل زیر مقایسه کنیم:

  • ابتدا یک نمونه از CompareApi ایجاد کنید.
  • سپس مسیر فایل منبع ورودی XLSX را تنظیم کنید.
  • سپس چندین مسیر فایل XLSX را تنظیم کنید.
  • سپس، شی ComparisonOptions را مقداردهی اولیه کنید و فایل های منبع و مقصد را تعیین کنید.
  • سپس مسیر فایل خروجی را تنظیم کنید.
  • پس از آن، ComparisonsRequest را با ComparisonOptions به عنوان آرگومان ایجاد کنید.
  • در نهایت، برگه اکسل را به صورت آنلاین مقایسه کنید و با استفاده از روش comparisons() نتیجه بگیرید.

نمونه کد زیر نحوه مقایسه چندین فایل اکسل را با استفاده از REST API در پایتون نشان می دهد.

# این مثال کد نحوه مقایسه چندین فایل اکسل را نشان می دهد.
# نمونه های API لازم را ایجاد کنید
api_instance = groupdocs_comparison_cloud.مقایسه کنیدApi.from_keys(client_id, client_secret)

# فایل منبع ورودی
source = groupdocs_comparison_cloud.FileInfo()
source.file_path = "source.xlsx"

# فایل هدف 1 را وارد کنید
target1 = groupdocs_comparison_cloud.FileInfo()
target1.file_path = "target.xlsx"

# فایل هدف 2 را وارد کنید
target2 = groupdocs_comparison_cloud.FileInfo()
target2.file_path = "target2.xlsx"

# گزینه های مقایسه را تعریف کنید
options = groupdocs_comparison_cloud.ComparisonOptions()
options.source_file = source
options.target_files = [target1, target2]
options.output_path = "result_multiple.xlsx"

# درخواست مقایسه
request = groupdocs_comparison_cloud.ComparisonsRequest(options)

# مقایسه کنید
response = api_instance.comparisons(request)

دریافت لیست تغییرات در پایتون

با دنبال کردن مراحل زیر می‌توانیم فهرستی از تمام تغییرات و مقایسه داده‌های برگه‌های اکسل که در طول مقایسه فایل‌های اکسل یافت می‌شوند را دریافت کنیم:

  • ابتدا یک نمونه از CompareApi ایجاد کنید.
  • سپس مسیر فایل منبع ورودی XLSX را تنظیم کنید.
  • سپس، مسیر فایل هدف XLSX را تنظیم کنید.
  • سپس شیء ComparisonOptions را مقداردهی کنید.
  • سپس، فایل های منبع/هدف را اختصاص دهید و مسیر فایل خروجی را تنظیم کنید.
  • پس از آن، شی PostChangesRequest را با ComparisonOptions به عنوان آرگومان ایجاد کنید.
  • در نهایت، با فراخوانی روش postChanges() به نتیجه برسید.

نمونه کد زیر نحوه مقایسه داده ها در دو برگه اکسل را برای مطابقت با استفاده از REST API در پایتون نشان می دهد.

# این مثال کد نشان می دهد که چگونه می توان لیستی از تغییرات یافت شده در طول مقایسه را دریافت کرد.
# نمونه های API لازم را ایجاد کنید
api_instance = groupdocs_comparison_cloud.CompareApi.from_keys(client_id, client_secret)

# فایل منبع ورودی
source = groupdocs_comparison_cloud.FileInfo()
source.file_path = "source.xlsx"

# فایل هدف را وارد کنید
target = groupdocs_comparison_cloud.FileInfo()
target.file_path = "target.xlsx"

# گزینه های مقایسه را تعریف کنید
options = groupdocs_comparison_cloud.ComparisonOptions()
options.source_file = source
options.target_files = [target]

# ایجاد درخواست تغییرات پست
request = groupdocs_comparison_cloud.PostChangesRequest(options)

# تغییرات پست
response = api_instance.post_changes(request)

# نمایش دهید
for change in response:
  print("Change # " + str(change.id + 1) + "- Target Text: " + str(change.target_text) + ", Text: " + str(change.text) + ", Type: " + str(change.type));

آنلاین را امتحان کنید

چگونه داده های دو برگه اکسل را با هم مقایسه کنیم؟ لطفاً [ابزار مقایسه آنلاین رایگان XLSX] زیر را برای مقایسه دو برگه اکسل برای مطابقت داده ها امتحان کنید. این ابزار مقایسه اکسل 2 برگه اکسل را به صورت آنلاین مقایسه می کند و با استفاده از API فوق توسعه یافته است.

نتیجه

در این مقاله یاد گرفتیم که چگونه:

  • دو برگه اکسل را مقایسه کنید و تفاوت های موجود در پایتون را برجسته کنید.
  • دریافت لیستی از موارد درج شده و حذف شده؛
  • به صورت برنامه ریزی شده بیش از یک فایل XLSX را در فضای ابری آپلود کنید.
  • فایل XLSX را از ابر دانلود کنید.

علاوه بر این، می‌توانید با استفاده از مستندات درباره GroupDocs.Comparison Cloud API اطلاعات بیشتری کسب کنید. ما همچنین یک بخش API Reference ارائه می‌کنیم که به شما امکان می‌دهد API‌های ما را مستقیماً از طریق مرورگر تجسم کرده و با آن‌ها تعامل داشته باشید. در صورت وجود هرگونه ابهامی در مورد نحوه مقایسه صفحات گسترده اکسل، لطفاً با ما در [فروم 14 تماس بگیرید.

همچنین ببینید