Excel เป็นหนึ่งในแอปพลิเคชันสเปรดชีตที่ได้รับความนิยมและใช้กันอย่างแพร่หลาย ช่วยให้เราสามารถจัดระเบียบ วิเคราะห์ และจัดเก็บข้อมูลในรูปแบบตาราง เราสามารถเพิ่ม แก้ไข หรือลบเนื้อหาของไฟล์ Excel โดยใช้ Python ได้อย่างง่ายดาย ในบทความนี้ เราจะเรียนรู้วิธีแก้ไขแผ่นงาน Excel โดยใช้ REST API ใน Python
หัวข้อต่อไปนี้จะครอบคลุมในบทความนี้:
- ตัวแก้ไขสเปรดชีต Excel REST API และ Python SDK
- แก้ไขไฟล์ Excel โดยใช้ REST API ใน Python
- เพิ่มตารางในแผ่นงาน Excel โดยใช้ Python
ตัวแก้ไขสเปรดชีต Excel REST API และ Python SDK
สำหรับการแก้ไขไฟล์ XLSX เราจะใช้ API ของ Python SDK of GroupDocs.Editor Cloud อนุญาตให้แก้ไขเอกสารของ รูปแบบที่รองรับ โปรดติดตั้งโดยใช้คำสั่งต่อไปนี้ในคอนโซล:
pip install groupdocs_editor_cloud
โปรด รับรหัสลูกค้าและข้อมูลลับจากแดชบอร์ด ก่อนทำตามขั้นตอนดังกล่าว เมื่อคุณมี ID และรหัสลับของคุณแล้ว ให้เพิ่มรหัสตามที่แสดงด้านล่าง:
# ตัวอย่างโค้ดนี้สาธิตวิธีเพิ่มรหัสไคลเอ็นต์และข้อมูลลับในโค้ด
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"
แก้ไขไฟล์ Excel โดยใช้ REST API ใน Python
เราสามารถแก้ไขไฟล์ Excel ได้โดยทำตามขั้นตอนง่าย ๆ ด้านล่าง:
อัปโหลดเอกสาร
ประการแรก เราจะอัปโหลดไฟล์ XLSX ไปยังคลาวด์โดยใช้ตัวอย่างโค้ดที่ระบุด้านล่าง:
# ตัวอย่างโค้ดนี้สาธิตวิธีการอัปโหลดไฟล์ Excel ไปยังระบบคลาวด์
# สร้างอินสแตนซ์ของ 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 ที่อัปโหลดจะอยู่ใน ส่วนไฟล์ ของแดชบอร์ดบนระบบคลาวด์
แก้ไขข้อมูลสเปรดชีต Excel ใน Python
เราสามารถแก้ไขเนื้อหาของแผ่นงาน Excel ได้โดยทำตามขั้นตอนด้านล่าง:
- ประการแรก สร้างอินสแตนซ์ของ FileApi และ EditApi
- ถัดไป ระบุเส้นทางไฟล์ XLSX ที่อัปโหลด
- จากนั้นดาวน์โหลดไฟล์เป็นเอกสาร HTML
- จากนั้น อ่านไฟล์ HTML ที่ดาวน์โหลดเป็นสตริง
- จากนั้นแก้ไข HTML และบันทึกเอกสาร HTML ที่อัปเดต
- หลังจากนั้น ให้อัปโหลดไฟล์ HTML ที่อัปเดตแล้ว
- สุดท้าย บันทึก HTML กลับไปเป็น XLSX โดยใช้เมธอด EditApi.save()
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีแก้ไขข้อมูลแผ่นงาน Excel โดยใช้ REST API ใน Python
# ตัวอย่างรหัสนี้สาธิตวิธีการแก้ไขเนื้อหาของแผ่นงาน Excel
# การเริ่มต้น 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)
ดาวน์โหลดไฟล์ที่อัปเดต
ตัวอย่างโค้ดด้านบนจะบันทึกไฟล์ Excel ที่แก้ไข (XLSX) บนคลาวด์ สามารถดาวน์โหลดได้โดยใช้ตัวอย่างโค้ดต่อไปนี้:
# ตัวอย่างรหัสนี้สาธิตวิธีการดาวน์โหลดไฟล์ Excel ที่อัปเดตแล้ว
# การเริ่มต้น 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\\")
เพิ่มตารางในแผ่นงาน Excel โดยใช้ Python
เราสามารถเพิ่มตารางในแผ่นงาน Excel ได้โดยทำตามขั้นตอนที่กล่าวมาแล้ว อย่างไรก็ตาม เราจำเป็นต้องอัปเดต 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>""")
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเพิ่มตารางในสเปรดชีต Excel โดยใช้ REST API ใน Python โปรดทำตามขั้นตอนที่กล่าวถึงก่อนหน้านี้เพื่ออัปโหลดและดาวน์โหลดไฟล์
# ตัวอย่างรหัสนี้สาธิตวิธีการแก้ไขแผ่นงาน Excel และแทรกตารางใหม่
# การเริ่มต้น 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
บทสรุป
ในบทความนี้ เราได้เรียนรู้:
- วิธีแก้ไขข้อมูลแผ่นงาน Excel บนคลาวด์
- วิธีเพิ่มตารางในแผ่นงาน Excel โดยใช้ Python
- อัปโหลดไฟล์ Excel ไปยังคลาวด์
- วิธีดาวน์โหลดไฟล์ Excel ที่อัปเดตจากคลาวด์
นอกจากนี้ คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับ GroupDocs.Editor Cloud API โดยใช้ เอกสารประกอบ เรายังมีส่วน API Reference ที่ช่วยให้คุณแสดงภาพและโต้ตอบกับ API ของเราได้โดยตรงผ่านเบราว์เซอร์ ในกรณีที่มีความคลุมเครือ โปรดติดต่อเราได้ที่ ฟอรัม