ممکن است لازم باشد چندین فایل مایکروسافت اکسل را به صورت برنامه ریزی شده در یک فایل ادغام کنید. با ترکیب فایل های اکسل با هم، می توانید به راحتی گزارش هایی را بر اساس داده های موجود در چندین فایل اکسل ایجاد کنید. به عنوان یک توسعه دهنده پایتون، می توانید دو یا چند کتاب کار یا صفحه گسترده اکسل را از فایل های مختلف در یک کتاب کار واحد ادغام کنید. در این مقاله، نحوه ادغام چندین فایل اکسل را در یک فایل با استفاده از REST API در پایتون خواهید آموخت.
موضوعات زیر باید در این مقاله پوشش داده شود:
- Excel Merger REST API و Python SDK
- ادغام چندین فایل اکسل با استفاده از REST API در پایتون
- ادغام برگه های خاص اکسل با استفاده از پایتون
Excel Merger REST API و Python SDK
برای ادغام چندین فایل XLSX، از Python SDK of GroupDocs.Merger Cloud API استفاده خواهم کرد. این به شما امکان می دهد یک صفحه یا مجموعه ای از صفحات را از فرمت های سند پشتیبانی شده از Word، Excel، PowerPoint ترکیب، تقسیم، حذف و تنظیم مجدد کنید، طراحیهای Visio، PDF و HTML.
می توانید GroupDocs.Merger Cloud را با استفاده از دستور زیر در کنسول در برنامه پایتون خود نصب کنید:
pip install groupdocs-merger-cloud
لطفاً قبل از انجام مراحل ذکر شده [شناسه مشتری و راز خود را از داشبورد دریافت کنید10. هنگامی که شناسه و راز خود را دریافت کردید، کد را مطابق شکل زیر اضافه کنید:
client_id = "659fe7da-715b-4744-a0f7-cf469a392b73"
client_secret = "b377c36cfa28fa69960ebac6b6e36421"
configuration = groupdocs_merger_cloud.Configuration(client_id, client_secret)
configuration.api_base_url = "https://api.groupdocs.cloud"
my_storage = ""
ادغام چندین فایل اکسل با استفاده از REST API در پایتون
با دنبال کردن مراحل ذکر شده در زیر می توانید دو یا چند فایل اکسل را به صورت برنامه نویسی در فضای ابری ترکیب کنید:
فایل های اکسل را آپلود کنید
ابتدا فایل های اکسل را با استفاده از نمونه کد زیر در Cloud آپلود کنید:
# یک نمونه از API ها ایجاد کنید
file_api = groupdocs_merger_cloud.FileApi.from_config(configuration)
storage_api = groupdocs_merger_cloud.StorageApi.from_config(configuration)
# فایل های نمونه را آپلود کنید
for filename in glob.iglob("C:\\Files\\upload\\*.xlsx", recursive=True):
destFile = filename.replace("C:\\Files\\upload", "", 1)
# بررسی کنید که آیا فایل از قبل وجود دارد
fileExistsResponse = storage_api.object_exists(groupdocs_merger_cloud.ObjectExistsRequest(destFile))
if not fileExistsResponse.exists:
# ایجاد درخواست آپلود فایل
request = groupdocs_merger_cloud.UploadFileRequest(destFile, filename)
# آپلود فایل
file_api.upload_file(request)
در نتیجه، فایلهای XLSX آپلود شده در بخش فایلها داشبورد شما در فضای ابری در دسترس خواهند بود.
ادغام چندین فایل اکسل با استفاده از پایتون
با دنبال کردن مراحل ذکر شده در زیر می توانید به راحتی چندین فایل اکسل را به صورت برنامه نویسی در یک فایل ادغام کنید:
- یک نمونه از DocumentApi ایجاد کنید
- اولین JoinItem را ایجاد کنید
- مسیر فایل ورودی را برای اولین JoinItem در FileInfo ارائه دهید
- دومین JoinItem را ایجاد کنید
- مسیر فایل ورودی را برای JoinItem دوم در FileInfo ارائه دهید
- در صورت تمایل، مراحل بالا را برای افزودن فایل های بیشتر تکرار کنید
- JoinOptions را ایجاد کنید
- فهرست موارد پیوسته ایجاد شده جدا شده با کاما را اضافه کنید
- مسیر فایل خروجی را تنظیم کنید
- JoinRequest را با JoinOptions ایجاد کنید
- متد join() را با JoinRequest فراخوانی کنید
نمونه کد زیر نحوه ادغام چندین فایل اکسل را با استفاده از REST API در پایتون نشان می دهد.
# نمونه ای از API ایجاد کنید
documentApi = groupdocs_merger_cloud.DocumentApi.from_keys(client_id, client_secret)
# تعریف اولین فایل ورودی
item1 = groupdocs_merger_cloud.JoinItem()
item1.file_info = groupdocs_merger_cloud.FileInfo("sample1.xlsx")
# تعریف فایل ورودی دوم
item2 = groupdocs_merger_cloud.JoinItem()
item2.file_info = groupdocs_merger_cloud.FileInfo("sample2.xlsx")
# گزینه های پیوستن را تعریف کنید
options = groupdocs_merger_cloud.JoinOptions()
options.join_items = [item1, item2]
options.output_path = "joined.xlsx"
# ایجاد درخواست پیوستن
request = groupdocs_merger_cloud.JoinRequest(options)
# به فایل ها بپیوندید
result = documentApi.join(request)
# انجام شده
print("Documents merged: " + result.path)
فایل ادغام شده را دانلود کنید
نمونه کد بالا فایل اکسل ادغام شده را در فضای ابری ذخیره می کند. با استفاده از نمونه کد زیر می توانید آن را دانلود کنید:
# مقداردهی اولیه API
file_api = groupdocs_merger_cloud.FileApi.from_config(configuration)
my_storage = ""
# درخواست فایل دانلود را ایجاد کنید
request = groupdocs_merger_cloud.DownloadFileRequest("joined.xlsx", my_storage)
response = file_api.download_file(request)
# فایل دانلود شده را به دایرکتوری کاری خود منتقل کنید
shutil.move(response, "C:\\Files\\")
ادغام برگه های خاص اکسل با استفاده از پایتون
با دنبال کردن مراحل ذکر شده در زیر به راحتی می توانید برگه های اکسل خاص را از چندین فایل اکسل در یک فایل واحد به صورت برنامه نویسی ادغام کنید:
- یک نمونه از DocumentApi ایجاد کنید
- اولین JoinItem را ایجاد کنید
- مسیر فایل ورودی را برای اولین JoinItem در FileInfo ارائه دهید
- دومین JoinItem را ایجاد کنید
- مسیر فایل ورودی را برای JoinItem دوم در FileInfo ارائه دهید
- برای JoinItem دوم شماره صفحه شروع و شماره صفحه پایان را تعریف کنید
- به صورت اختیاری، حالت محدوده را تعریف کنید
- JoinOptions را ایجاد کنید
- فهرست موارد پیوسته ایجاد شده جدا شده با کاما را اضافه کنید
- مسیر فایل خروجی را تنظیم کنید
- JoinRequest را با JoinOptions ایجاد کنید
- با فراخوانی متد join() در DocumentAPI به نتیجه برسید
قطعه کد زیر نحوه ادغام برگه های خاص اکسل را از چندین فایل با استفاده از REST API در پایتون نشان می دهد.
# نمونه ای از API ایجاد کنید
documentApi = groupdocs_merger_cloud.DocumentApi.from_keys(client_id, client_secret)
# تعریف اولین فایل ورودی
item1 = groupdocs_merger_cloud.JoinItem()
item1.file_info = groupdocs_merger_cloud.FileInfo("sample1.xlsx")
# تعریف فایل ورودی دوم
item2 = groupdocs_merger_cloud.JoinItem()
item2.file_info = groupdocs_merger_cloud.FileInfo("sample2.xlsx")
# محدوده اعداد برگه را برای ادغام تنظیم کنید
item2.start_page_number = 3
item2.end_page_number = 4
# حالت برد
item2.range_mode = "OddPages"
# گزینه های پیوستن را تعریف کنید
options = groupdocs_merger_cloud.JoinOptions()
options.join_items = [item1, item2]
options.output_path = "joined_sheets.xlsx"
# ایجاد درخواست پیوستن
request = groupdocs_merger_cloud.JoinRequest(options)
# به فایل ها بپیوندید
result = documentApi.join(request)
# انجام شده
print("Documents merged: " + result.path)
آنلاین را امتحان کنید
لطفاً ابزار ادغام آنلاین رایگان XLSX زیر را که با استفاده از API بالا ایجاد شده است، امتحان کنید. https://products.groupdocs.app/merger/xlsx
نتیجه
در این مقاله نحوه ادغام چندین فایل اکسل در فضای ابری را یاد گرفتید. علاوه بر این، نحوه ادغام برگه های اکسل خاص از چندین فایل را در یک فایل با استفاده از REST API در پایتون دیده اید. این مقاله همچنین نحوه آپلود برنامهنویسی فایلهای XLSX را در فضای ابری و سپس دانلود فایل ادغامشده از Cloud توضیح داد. API همچنین شما را قادر می سازد تا صفحات سند را مجدداً ترتیب یا جایگزین کنید، جهت صفحه را تغییر دهید، رمزهای عبور اسناد را مدیریت کنید و دستکاری های دیگر را به راحتی برای هر فرمت فایل پشتیبانی شده انجام دهید. میتوانید با استفاده از مستندات درباره GroupDocs.Merge Cloud API اطلاعات بیشتری کسب کنید. ما همچنین یک بخش API Reference ارائه می کنیم که به شما امکان می دهد API های ما را مستقیماً از طریق مرورگر تجسم کرده و با آنها تعامل داشته باشید. در صورت وجود هرگونه ابهامی، لطفاً با ما در تالار گفتمان تماس بگیرید.