ในฐานะนักพัฒนา Python คุณอาจต้องแก้ไขเอกสาร Word หรือ Excel โดยทางโปรแกรม คุณสามารถอัปเดตเอกสารดังกล่าวได้โดยไม่ต้องติดตั้งแอปพลิเคชันภายนอกใดๆ บทความนี้จะมุ่งเน้นไปที่วิธีการแก้ไขเอกสาร Word หรือ Excel โดยใช้ REST API

หัวข้อต่อไปนี้จะครอบคลุมในบทความนี้:

โปรแกรมแก้ไขเอกสาร REST API และ Python SDK

GroupDocs.Editor ตระกูลผลิตภัณฑ์คลาวด์

สำหรับการแก้ไขเอกสาร Word หรือแผ่นงาน Excel ฉันจะใช้ Python SDK of GroupDocs.Editor Cloud API ช่วยให้คุณสามารถแก้ไขเอกสารการประมวลผล Word, แผ่นงาน Excel หรือเอกสารในรูปแบบอื่นที่รองรับโดยทางโปรแกรม นอกจากนี้ยังมี .NET, Java, PHP, Ruby, Android และ Node.js SDK เป็น สมาชิกตระกูลตัวแก้ไขเอกสาร สำหรับ Cloud API

คุณสามารถติดตั้ง GroupDocs.Editor-Cloud กับโปรเจ็กต์ Python โดยใช้คำสั่งต่อไปนี้ในคอนโซล:

pip install groupdocs_editor_cloud

โปรดรับรหัสไคลเอ็นต์และรหัสลับไคลเอ็นต์จาก แดชบอร์ด ก่อนที่คุณจะเริ่มทำตามขั้นตอนและตัวอย่างโค้ดที่มีอยู่ เพิ่ม ID และความลับของคุณในรหัสที่แสดงด้านล่าง:

client_id = "YOUR_CLIENT_ID"
client_secret = "YOUR_CLIENT_SECRET"

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

แก้ไขเอกสาร Word โดยใช้ REST API

คุณสามารถแก้ไขเอกสาร Word ได้โดยทำตามขั้นตอนง่าย ๆ ด้านล่าง:

อัปโหลดเอกสาร

ก่อนอื่น ให้อัปโหลดเอกสาร Word ไปยัง Cloud โดยใช้ตัวอย่างโค้ดด้านล่าง:

storage_api = groupdocs_editor_cloud.StorageApi.from_config(config_info)
file_api = groupdocs_editor_cloud.FileApi.from_config(config_info)

# อัปโหลดไฟล์ตัวอย่าง
files = glob.glob("C:\\Files\\sample_word_document.docx", recursive=False)
destination_file = files[0].replace("C:\\Files\\", "", 1)
file_api.upload_file(groupdocs_editor_cloud.UploadFileRequest(destination_file, files[0]))

ด้วยเหตุนี้ ไฟล์ Word จะถูกอัปโหลดไปยัง Cloud Storage และจะอยู่ใน ส่วนไฟล์ ของแดชบอร์ดของคุณ

แก้ไขเอกสาร Word ใน Python

โปรดทำตามขั้นตอนด้านล่างเพื่อแก้ไขเอกสาร Word โดยทางโปรแกรม

  • สร้างอินสแตนซ์ File API และ Edit API
  • ให้ WordProcessingLoadOptions
  • โหลดไฟล์ด้วยวิธี Load ของ Edit API
  • ดาวน์โหลดเอกสาร HTML โดยใช้วิธี ดาวน์โหลดไฟล์ ของ File API
  • แก้ไขเอกสาร HTML
  • อัปโหลด HTML กลับโดยใช้เมธอด Upload File ของ File API
  • ให้ WordProcessingSaveOptions เพื่อบันทึกใน DOCX
  • บันทึก HTML กลับไปที่ DOCX โดยใช้วิธี Save ของ Edit API

ข้อมูลโค้ดต่อไปนี้แสดงวิธีอัปเดตเอกสาร Word โดยใช้ REST API

# สร้างอินสแตนซ์ API ที่จำเป็น
edit_api = groupdocs_editor_cloud.EditApi.from_config(configurations)
file_api = groupdocs_editor_cloud.FileApi.from_config(configuration)

# เอกสารถูกอัปโหลดไปยังพื้นที่จัดเก็บแล้ว
# โหลดลงในสถานะที่สามารถแก้ไขได้
file_info = groupdocs_editor_cloud.FileInfo("sample_word_document.docx", None, None, None)
load_options = groupdocs_editor_cloud.WordProcessingLoadOptions()
load_options.file_info = file_info
load_options.output_path = "output"
load_result = edit_api.load(groupdocs_editor_cloud.LoadRequest(load_options))

# ดาวน์โหลดเอกสาร html
html_file = file_api.download_file(groupdocs_editor_cloud.DownloadFileRequest(load_result.html_path))
html = ""
with open(html_file, 'r') as file:
    html = file.read()

# แก้ไขบางอย่าง...
html = html.replace("Sample test text", "Hello world")

# อัปโหลด html กลับไปยังที่เก็บข้อมูล
with open(html_file, 'w') as file:
    file.write(html)

file_api.upload_file(groupdocs_editor_cloud.UploadFileRequest(load_result.html_path, html_file))

# บันทึก html กลับไปที่ docx
save_options = groupdocs_editor_cloud.WordProcessingSaveOptions()
save_options.file_info = file_info
save_options.output_path = "output/edited.docx"
save_options.html_path = load_result.html_path
save_options.resources_path = load_result.resources_path
save_result = edit_api.save(groupdocs_editor_cloud.SaveRequest(save_options))

# เสร็จแล้ว
print("Document edited: " + save_result.path)

ดาวน์โหลดไฟล์ที่อัปเดต

ตัวอย่างโค้ดด้านบนจะบันทึกไฟล์ Word ที่แก้ไขบนคลาวด์ คุณสามารถดาวน์โหลดได้โดยใช้ตัวอย่างโค้ดต่อไปนี้:

request = groupdocs_editor_cloud.DownloadFileRequest("output\\edited.docx", my_storage)
response = file_api.download_file(request)

# ย้ายไฟล์ที่ดาวน์โหลดไปยังไดเร็กทอรีการทำงานของคุณ
shutil.move(response, "C:\\Files\\")

แก้ไขแผ่นงาน Excel โดยใช้ REST API

โปรดทำตามขั้นตอนด้านล่างเพื่อแก้ไขแผ่นงาน Excel โดยทางโปรแกรม

  • สร้างอินสแตนซ์ File API และ Edit API
  • ให้ตัวเลือกการโหลดสเปรดชีต
  • โหลดไฟล์ด้วยวิธี Load ของ Edit API
  • ดาวน์โหลดเอกสาร HTML โดยใช้วิธี ดาวน์โหลดไฟล์ ของ File API
  • แก้ไขเอกสาร HTML
  • อัปโหลด HTML กลับโดยใช้เมธอด Upload File ของ File API
  • ให้ตัวเลือกสเปรดชีตบันทึกเพื่อบันทึกใน XLSX
  • บันทึก HTML กลับไปเป็น XLSX โดยใช้วิธี Save ของ Edit API

ตัวอย่างโค้ดอย่างง่ายด้านล่างแสดงวิธีอัปเดตแผ่นงาน Excel โดยใช้ REST API โปรดทำตามขั้นตอนที่กล่าวถึงก่อนหน้านี้เพื่ออัปโหลดและดาวน์โหลดไฟล์

# สร้างอินสแตนซ์ API ที่จำเป็น
edit_api = groupdocs_editor_cloud.EditApi.from_config(configurations)
file_api = groupdocs_editor_cloud.FileApi.from_config(configurations)

# เอกสารถูกอัปโหลดไปยังพื้นที่จัดเก็บแล้ว
# โหลดลงในสถานะที่สามารถแก้ไขได้
file_info = groupdocs_editor_cloud.FileInfo("sample_four_sheets.xlsx")
load_options = groupdocs_editor_cloud.SpreadsheetLoadOptions()
load_options.file_info = file_info
load_options.output_path = "output"
load_options.worksheet_index = 0
load_result = edit_api.load(groupdocs_editor_cloud.LoadRequest(load_options))

# ดาวน์โหลดเอกสาร html
html_file = file_api.download_file(groupdocs_editor_cloud.DownloadFileRequest(load_result.html_path))
html = ""
with open(html_file, 'r') as file:
    html = file.read()

# แก้ไขบางอย่าง...
html = html.replace("This is sample sheet", "This is sample sheep")

# อัปโหลด html กลับไปยังที่เก็บข้อมูล
with open(html_file, 'w') as file:
    file.write(html)

file_api.upload_file(groupdocs_editor_cloud.UploadFileRequest(load_result.html_path, html_file))

# บันทึก html กลับเป็น xlsx
save_options = groupdocs_editor_cloud.SpreadsheetSaveOptions()
save_options.file_info = file_info
save_options.output_path = "output/edited.xlsx"
save_options.html_path = load_result.html_path
save_options.resources_path = load_result.resources_path
save_result = edit_api.save(groupdocs_editor_cloud.SaveRequest(save_options))

# เสร็จแล้ว
print("Excel sheet edited: " + save_result.path)

บทสรุป

ในบทความนี้ คุณได้เรียนรู้วิธีแก้ไขเอกสาร Word หรือแผ่นงาน Excel บนคลาวด์ด้วย Document Editor REST API โดยใช้ Python คุณยังได้เรียนรู้วิธีอัปโหลดไฟล์ทางโปรแกรมบนคลาวด์ จากนั้นดาวน์โหลดไฟล์ที่อัปเดตจากคลาวด์ คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับ GroupDocs.Editor Cloud API โดยใช้ เอกสารประกอบ นอกจากนี้ เรายังมีส่วน การอ้างอิง API ที่ช่วยให้คุณแสดงภาพและโต้ตอบกับ API ของเราได้โดยตรงผ่านเบราว์เซอร์ ในกรณีที่มีความคลุมเครือ โปรดติดต่อเราได้ที่ ฟอรัม

ดูสิ่งนี้ด้วย