اکسل یکی از محبوب ترین و پرکاربردترین برنامه های صفحه گسترده است. این ما را قادر می سازد تا داده ها را به صورت جدولی سازماندهی، تجزیه و تحلیل و ذخیره کنیم. ما به راحتی می توانیم محتوای فایل های اکسل را با استفاده از پایتون اضافه، ویرایش یا حذف کنیم. در این مقاله نحوه ویرایش یک برگه اکسل با استفاده از REST API در پایتون را یاد خواهیم گرفت.
موضوعات زیر در این مقاله پوشش داده خواهد شد:
- Excel Spreadsheets Editor REST API و Python SDK
- فایل های اکسل را با استفاده از REST API در پایتون ویرایش کنید
- اضافه کردن جدول در برگه اکسل با استفاده از پایتون
Excel Spreadsheets Editor REST API و Python SDK
برای اصلاح فایلهای XLSX، از Python SDK of GroupDocs.Editor Cloud API استفاده خواهیم کرد. این اجازه می دهد تا اسناد [فرمت های پشتیبانی شده] را ویرایش کنید. لطفا با استفاده از دستور زیر در کنسول آن را نصب کنید:
pip install groupdocs_editor_cloud
لطفاً قبل از انجام مراحل ذکر شده [شناسه مشتری و راز خود را از داشبورد 4 دریافت کنید. هنگامی که شناسه و راز خود را دریافت کردید، کد را مطابق شکل زیر اضافه کنید:
# این مثال کد نشان می دهد که چگونه شناسه مشتری و Secret خود را در کد اضافه کنید.
client_id = "659fe7da-715b-4744-a0f7-cf469a392b73"
client_secret = "b377c36cfa28fa69960ebac6b6e36421"
my_storage = ""
configuration = groupdocs_editor_cloud.Configuration(client_id, client_secret)
configuration.api_base_url = "https://api.groupdocs.cloud"
فایل اکسل را با استفاده از REST API در پایتون ویرایش کنید
ما می توانیم فایل های اکسل را با دنبال کردن مراحل ساده زیر ویرایش کنیم:
سند را آپلود کنید
ابتدا فایل XLSX را با استفاده از نمونه کد زیر در فضای ابری آپلود می کنیم:
# این مثال کد نحوه آپلود یک فایل اکسل در فضای ابری را نشان می دهد.
# نمونه ای از API ایجاد کنید
file_api = groupdocs_editor_cloud.FileApi.from_config(configuration)
# فایل نمونه را آپلود کنید
request = groupdocs_editor_cloud.UploadFileRequest("sample.xlsx", "C:\\Files\\\Editor\\sample.xlsx", my_storage)
response = file_api.upload_file(request)
در نتیجه، فایل XLSX آپلود شده در بخش فایل ها داشبورد در فضای ابری در دسترس خواهد بود.
ویرایش داده های صفحه گسترده اکسل در پایتون
با دنبال کردن مراحل زیر میتوانیم محتوای یک برگه اکسل را ویرایش کنیم:
- ابتدا نمونه هایی از FileApi و EditApi را ایجاد کنید.
- بعد، مسیر فایل XLSX آپلود شده را ارائه دهید.
- سپس، فایل را به عنوان یک سند HTML دانلود کنید.
- سپس فایل HTML دانلود شده را به صورت رشته ای بخوانید.
- سپس، HTML را ویرایش کنید و سند HTML به روز شده را ذخیره کنید.
- پس از آن، فایل HTML به روز شده را آپلود کنید.
- در نهایت، HTML را با استفاده از روش EditApi.save() به XLSX ذخیره کنید.
نمونه کد زیر نحوه ویرایش داده های برگه اکسل را با استفاده از REST API در پایتون نشان می دهد.
# این مثال کد نحوه ویرایش محتوای یک برگه اکسل را نشان می دهد.
# مقداردهی اولیه API
editApi = groupdocs_editor_cloud.EditApi.from_keys(client_id, client_secret)
fileApi = groupdocs_editor_cloud.FileApi.from_keys(client_id, client_secret)
# سند آپلود شده را در حالت قابل ویرایش بارگیری کنید
fileInfo = groupdocs_editor_cloud.FileInfo("sample.xlsx")
# گزینه های بارگذاری صفحه گسترده را تعریف کنید
loadOptions = groupdocs_editor_cloud.SpreadsheetLoadOptions()
loadOptions.file_info = fileInfo
# مسیر پوشه خروجی را ارائه دهید
loadOptions.output_path = "output"
# فهرست کاربرگ را برای ویرایش ارائه دهید
loadOptions.worksheet_index = 0
# ورق را بارگیری کنید
loadResult = editApi.load(groupdocs_editor_cloud.LoadRequest(loadOptions))
# دانلود سند html
htmlFile = fileApi.download_file(groupdocs_editor_cloud.DownloadFileRequest(loadResult.html_path))
html = ""
with open(htmlFile, 'r') as file:
html = file.read()
# چیزی را ویرایش کنید...
html = html.replace("Welcome", "This is a sample sheet!")
# html را دوباره به فضای ذخیره سازی آپلود کنید
with open(htmlFile, 'w') as file:
file.write(html)
fileApi.upload_file(groupdocs_editor_cloud.UploadFileRequest(loadResult.html_path, htmlFile))
# html را به xlsx ذخیره کنید
saveOptions = groupdocs_editor_cloud.SpreadsheetSaveOptions()
saveOptions.file_info = fileInfo
saveOptions.output_path = "edited.xlsx"
saveOptions.html_path = loadResult.html_path
saveOptions.resources_path = loadResult.resources_path
saveResult = editApi.save(groupdocs_editor_cloud.SaveRequest(saveOptions))
# انجام شده
print("Document edited: " + saveResult.path)
فایل به روز شده را دانلود کنید
نمونه کد بالا فایل اکسل ویرایش شده (XLSX) را در فضای ابری ذخیره می کند. با استفاده از نمونه کد زیر قابل دانلود است:
# این مثال کد نحوه دانلود فایل اکسل به روز شده را نشان می دهد.
# مقداردهی اولیه API
file_api = groupdocs_editor_cloud.FileApi.from_config(configuration)
# دریافت فایل
request = groupdocs_editor_cloud.DownloadFileRequest("edited.xlsx", my_storage)
response = file_api.download_file(request)
# فایل دانلود شده را به دایرکتوری کاری خود منتقل کنید
shutil.move(response, "C:\\Files\\Editor\\")
اضافه کردن جدول در برگه اکسل با استفاده از پایتون
با دنبال کردن مراحلی که قبلا ذکر شد میتوانیم جدولی را در برگه اکسل اضافه کنیم. با این حال، ما باید HTML را به روز کنیم تا جدولی را مانند شکل زیر در سند اضافه کنیم:
html = html.replace("</TABLE>", """</TABLE> <br/><table style="width: 100%;background-color: #dddddd;border: 1px solid black;">
<caption style=\"font-weight:bold;\"> Persons List</caption>
<tr><th style="background-color: #04AA6D; color: white;">First Name</th><th style="background-color: #04AA6D; color: white;">Last Name</th><th style="background-color: #04AA6D; color: white;">Age</th></tr>
<tr><td>Jill</td><td>Smith</td><td>50</td></tr>
<tr><td>Eve</td><td>Jackson</td><td>94</td></tr>
</table>""")
نمونه کد زیر نحوه اضافه کردن جدول در صفحه گسترده اکسل را با استفاده از REST API در پایتون نشان می دهد. لطفاً برای آپلود و دانلود یک فایل مراحل ذکر شده را دنبال کنید.
# این مثال کد نحوه ویرایش برگه اکسل و درج جدول جدید را نشان می دهد.
# مقداردهی اولیه API
editApi = groupdocs_editor_cloud.EditApi.from_keys(client_id, client_secret)
fileApi = groupdocs_editor_cloud.FileApi.from_keys(client_id, client_secret)
# سند آپلود شده را در حالت قابل ویرایش بارگیری کنید
fileInfo = groupdocs_editor_cloud.FileInfo("sample.xlsx")
# گزینه های بارگذاری صفحه گسترده را تعریف کنید
loadOptions = groupdocs_editor_cloud.SpreadsheetLoadOptions()
loadOptions.file_info = fileInfo
# مسیر پوشه خروجی را ارائه دهید
loadOptions.output_path = "output"
# فهرست کاربرگ را برای ویرایش ارائه دهید
loadOptions.worksheet_index = 0
# ورق را بارگیری کنید
loadResult = editApi.load(groupdocs_editor_cloud.LoadRequest(loadOptions))
# دانلود سند html
htmlFile = fileApi.download_file(groupdocs_editor_cloud.DownloadFileRequest(loadResult.html_path))
html = ""
with open(htmlFile, 'r') as file:
html = file.read()
# درج جدول
html = html.replace("</TABLE>", """</TABLE> <br/><table style="width: 100%;background-color: #dddddd;border: 1px solid black;">
<caption style=\"font-weight:bold;\"> Persons List</caption>
<tr><th style="background-color: #04AA6D; color: white;">First Name</th><th style="background-color: #04AA6D; color: white;">Last Name</th><th style="background-color: #04AA6D; color: white;">Age</th></tr>
<tr><td>Jill</td><td>Smith</td><td>50</td></tr>
<tr><td>Eve</td><td>Jackson</td><td>94</td></tr>
</table>""")
# html را دوباره به فضای ذخیره سازی آپلود کنید
with open(htmlFile, 'w') as file:
file.write(html)
fileApi.upload_file(groupdocs_editor_cloud.UploadFileRequest(loadResult.html_path, htmlFile))
# html را به xlsx ذخیره کنید
saveOptions = groupdocs_editor_cloud.SpreadsheetSaveOptions()
saveOptions.file_info = fileInfo
saveOptions.output_path = "edited.xlsx"
saveOptions.html_path = loadResult.html_path
saveOptions.resources_path = loadResult.resources_path
saveResult = editApi.save(groupdocs_editor_cloud.SaveRequest(saveOptions))
# انجام شده
print("Document edited: " + saveResult.path)
آنلاین را امتحان کنید
لطفاً ابزار ویرایش آنلاین رایگان XLSX زیر را که با استفاده از API بالا ایجاد شده است، امتحان کنید. https://products.groupdocs.app/editor/xlsx
نتیجه
در این مقاله یاد گرفتیم:
- نحوه ویرایش داده های برگه های اکسل در فضای ابری؛
- نحوه اضافه کردن جدول در برگه اکسل با استفاده از پایتون.
- آپلود فایل اکسل در فضای ابری؛
- نحوه دانلود فایل اکسل به روز شده از ابر.
علاوه بر این، میتوانید با استفاده از مستندات درباره GroupDocs.Editor Cloud API اطلاعات بیشتری کسب کنید. ما همچنین یک بخش API Reference ارائه میکنیم که به شما امکان میدهد APIهای ما را مستقیماً از طریق مرورگر تجسم کرده و با آنها تعامل داشته باشید. در صورت وجود هرگونه ابهام، لطفاً با ما در [فروم 13 تماس بگیرید.