Python에서 REST API를 사용하여 Word 문서 편집

경우에 따라 프로그래밍 방식으로 Word 문서를 편집해야 할 수도 있습니다. DOC 또는 DOCX 파일의 내용을 쉽게 추가, 편집 또는 삭제하거나 Python을 사용하여 텍스트 서식을 적용할 수 있습니다. 이 기사에서는 Python에서 REST API를 사용하여 Word 문서를 편집하는 방법을 배웁니다.

이 문서에서는 다음 항목을 다룹니다.

Word 문서 편집기 REST API 및 Python SDK

DOCX 파일을 편집하기 위해 GroupDocs.Editor Cloud의 Python SDK API를 사용합니다. 콘솔에서 다음 명령을 사용하여 설치하십시오.

pip install groupdocs_editor_cloud

언급된 단계를 따르기 전에 대시보드에서 클라이언트 ID와 암호를 가져오십시오. ID와 시크릿이 있으면 아래와 같이 코드를 추가합니다.

client_id = "659fe7da-715b-4744-a0f7-cf469a392b73"
client_secret = "b377c36cfa28fa69960ebac6b6e36421"

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

Python에서 REST API를 사용하여 Word 문서 편집

아래에 언급된 간단한 단계에 따라 Word 문서를 편집할 수 있습니다.

  1. 업로드 클라우드에 DOCX 파일 업로드
  2. 편집 Python을 사용하는 Word 문서
  3. 다운로드 업데이트된 파일

문서 업로드

먼저 아래 제공된 코드 예제를 사용하여 DOCX 파일을 클라우드에 업로드합니다.

# API 인스턴스 생성
file_api = groupdocs_editor_cloud.FileApi.from_config(configuration)

# 샘플 파일 업로드
request = groupdocs_editor_cloud.UploadFileRequest("sample.docx", "C:\\Files\\Editor\\sample.docx", my_storage)
response = file_api.upload_file(request)

결과적으로 업로드된 DOCX 파일은 클라우드 대시보드의 파일 섹션에서 사용할 수 있습니다.

Python을 사용하여 Word 문서 편집

아래 단계에 따라 프로그래밍 방식으로 Word 문서를 편집할 수 있습니다.

  • 먼저 FileApiEditApi의 인스턴스를 생성합니다.
  • 다음으로 FileInfo의 인스턴스를 만들고 입력 DOCX 파일 경로를 제공합니다.
  • 그런 다음 WordProcessingLoadOptions의 인스턴스를 초기화하고 FileInfo를 할당합니다.
  • 다음으로 WordProcessingLoadOptions 개체를 인수로 사용하여 LoadRequest를 만듭니다.
  • 그런 다음 LoadRequest 개체와 함께 EditApi.load() 메서드를 호출하여 입력 DOCX 파일을 로드합니다.
  • 그런 다음 로드된 파일로 DownloadFileRequest를 생성합니다.
  • 그런 다음 FileApi.download\file() 메서드를 호출하여 파일을 HTML 문서로 다운로드합니다.
  • 다음으로 다운로드한 HTML 파일을 문자열로 읽습니다.
  • 그런 다음 HTML을 편집하고 업데이트된 HTML 문서를 저장합니다.
  • 다음으로 UploadFileRequest를 생성하고 HTML 경로와 파일을 매개변수로 전달합니다.
  • 그런 다음 UploadFileRequest와 함께 FileApi.upload\file() 메서드를 호출하여 업데이트된 HTML 파일을 업로드합니다.
  • 다음으로 DOCX에 저장할 WordProcessingSaveOptions의 인스턴스를 만듭니다.
  • 그런 다음 WordProcessingSaveOptions 객체로 SaveRequest를 생성합니다.
  • 마지막으로 SaveRequest 개체와 함께 EditApi.save() 메서드를 사용하여 HTML을 다시 DOCX에 저장합니다.

다음 코드 샘플은 Python에서 REST API를 사용하여 Word 문서를 편집하는 방법을 보여줍니다.

# 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.docx")

# 짐Options를 정의하여 편집 가능한 상태로 로드
loadOptions = groupdocs_editor_cloud.WordProcessing짐Options()
loadOptions.file_info = fileInfo
loadOptions.output_path = "output"

# 로드 요청 생성
loadRequest = groupdocs_editor_cloud.짐Request(loadOptions)

# 짐
loadResult = editApi.load(loadRequest)        

# 다운로드 요청 생성
downloadRequest = groupdocs_editor_cloud.DownloadFileRequest(loadResult.html_path)

# HTML 문서 다운로드
htmlFile = fileApi.download_file(downloadRequest)

# HTML 문서 읽기
html = ""       
with open(htmlFile, 'r') as file:
    html = file.read()

# 수정...    
html = html.replace("Title of the document", "Hello world")
html = html.replace("Subtitle #1", "Welcome")

# html을 파일에 다시 쓰기
with open(htmlFile, 'w') as file:
    file.write(html)

# 업로드 요청 만들기
uploadRequest = groupdocs_editor_cloud.UploadFileRequest(loadResult.html_path, htmlFile)

# 파일 업로드
fileApi.upload_file(uploadRequest)

# html을 docx에 다시 저장
saveOptions = groupdocs_editor_cloud.WordProcessing구하다Options()
saveOptions.file_info = fileInfo
saveOptions.output_path = "output/edited.docx"
saveOptions.html_path = loadResult.html_path
saveOptions.resources_path = loadResult.resources_path

# 저장 요청 생성
saveRequest = groupdocs_editor_cloud.구하다Request(saveOptions)

# 구하다
saveResult = editApi.save(saveRequest)

# 완료
print("Document edited: " + saveResult.path)
Python에서 REST API를 사용하여 Word 문서를 편집합니다.

Python에서 REST API를 사용하여 Word 문서를 편집합니다.

업데이트된 파일 다운로드

위의 코드 샘플은 편집된 Word 문서(DOCX)를 클라우드에 저장합니다. 다음 코드 샘플을 사용하여 다운로드할 수 있습니다.

# API 초기화
file_api = groupdocs_editor_cloud.FileApi.from_config(configuration)

# 다운로드 파일 요청 생성
request = groupdocs_editor_cloud.DownloadFileRequest("output/edited.docx", my_storage)

# 파일 다운로드
response = file_api.download_file(request)

# 다운로드한 파일을 작업 디렉토리로 이동
shutil.move(response, "C:\\Files\\Editor\\")

Python을 사용하여 Word 문서에 테이블 추가

앞에서 언급한 단계에 따라 프로그래밍 방식으로 Word 문서에 테이블을 추가할 수 있습니다. 그러나 아래와 같이 문서에 테이블을 추가하려면 HTML을 업데이트해야 합니다.

html = html.replace("left-aligned.", """left-aligned. <br/><table style="width: 100%;background-color: #dddddd;">
	<caption style=\"font-weight:bold;\"> Persons List</caption>
	<tr><th>First Name</th><th>Last Name</th><th>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>""")

다음 코드 샘플은 Python에서 REST API를 사용하여 Word 문서에 표를 추가하는 방법을 보여줍니다. 앞에서 언급한 단계에 따라 파일을 업로드하고 다운로드하십시오.

# 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.docx")

# 짐Options를 정의하여 편집 가능한 상태로 로드
loadOptions = groupdocs_editor_cloud.WordProcessing짐Options()
loadOptions.file_info = fileInfo
loadOptions.output_path = "output"

# 로드 요청 생성
loadRequest = groupdocs_editor_cloud.짐Request(loadOptions)

# 짐
loadResult = editApi.load(loadRequest)        

# 다운로드 요청 생성
downloadRequest = groupdocs_editor_cloud.DownloadFileRequest(loadResult.html_path)

# HTML 문서 다운로드
htmlFile = fileApi.download_file(downloadRequest)

# HTML 문서 읽기
html = ""       
with open(htmlFile, 'r') as file:
    html = file.read()

# 표 삽입
html = html.replace("left-aligned.", """left-aligned. <br/><table style="width: 100%;background-color: #dddddd;">
  <caption style=\"font-weight:bold;\"> Persons List</caption>
  <tr><th>First Name</th><th>Last Name</th><th>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)

# 업로드 요청 만들기
uploadRequest = groupdocs_editor_cloud.UploadFileRequest(loadResult.html_path, htmlFile)

# 파일 업로드
fileApi.upload_file(uploadRequest)

# html을 docx에 다시 저장
saveOptions = groupdocs_editor_cloud.WordProcessing구하다Options()
saveOptions.file_info = fileInfo
saveOptions.output_path = "output/add_table.docx"
saveOptions.html_path = loadResult.html_path
saveOptions.resources_path = loadResult.resources_path

# 저장 요청 생성
saveRequest = groupdocs_editor_cloud.구하다Request(saveOptions)

# 구하다
saveResult = editApi.save(saveRequest)

# 완료
print("Document edited: " + saveResult.path)
Python을 사용하여 Word 문서에 테이블을 추가합니다.

Python을 사용하여 Word 문서에 테이블을 추가합니다.

Python을 사용하여 Word 문서에 이미지 삽입

앞에서 언급한 단계에 따라 프로그래밍 방식으로 Word 문서에 이미지를 삽입할 수 있습니다. 그러나 아래와 같이 문서에 이미지를 삽입하려면 HTML을 업데이트해야 합니다.

html = html.replace("left-aligned.", """left-aligned. <br/> <img src=\"groupdocs.png\" alt=\"signatures\" style=\"width: 128px; height: 128px;\">""");

다음 코드 샘플은 Python에서 REST API를 사용하여 Word 문서에 이미지를 삽입하는 방법을 보여줍니다. 앞에서 언급한 단계에 따라 파일을 업로드하고 다운로드하십시오.

# 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.docx")

# 짐Options를 정의하여 편집 가능한 상태로 로드
loadOptions = groupdocs_editor_cloud.WordProcessing짐Options()
loadOptions.file_info = fileInfo
loadOptions.output_path = "output"

# 로드 요청 생성
loadRequest = groupdocs_editor_cloud.짐Request(loadOptions)

# 짐
loadResult = editApi.load(loadRequest)        

# 다운로드 요청 생성
downloadRequest = groupdocs_editor_cloud.DownloadFileRequest(loadResult.html_path)

# HTML 문서 다운로드
htmlFile = fileApi.download_file(downloadRequest)

# HTML 문서 읽기
html = ""       
with open(htmlFile, 'r') as file:
    html = file.read()

# 이미지 삽입
html = html.replace("left-aligned.", """left-aligned. <br/> <img src=\"groupdocs.png\" alt=\"signatures\" style=\"width: 128px; height: 128px;\">""");

# html을 파일에 다시 쓰기
with open(htmlFile, 'w') as file:
    file.write(html)

# 업로드 요청 만들기
uploadRequest = groupdocs_editor_cloud.UploadFileRequest(loadResult.html_path, htmlFile)

# 파일 업로드
fileApi.upload_file(uploadRequest)

# html을 docx에 다시 저장
saveOptions = groupdocs_editor_cloud.WordProcessing구하다Options()
saveOptions.file_info = fileInfo
saveOptions.output_path = "output/add_image.docx"
saveOptions.html_path = loadResult.html_path
saveOptions.resources_path = loadResult.resources_path

# 저장 요청 생성
saveRequest = groupdocs_editor_cloud.구하다Request(saveOptions)

# 구하다
saveResult = editApi.save(saveRequest)

# 완료
print("Document edited: " + saveResult.path)
Python에서 REST API를 사용하여 Word 문서 편집

Python을 사용하여 Word 문서에 이미지를 삽입합니다.

온라인 시도

위의 API를 사용하여 개발된 다음 무료 온라인 DOCX 편집 도구를 사용해 보십시오. https://products.groupdocs.app/editor/docx

결론

이 기사에서는 클라우드에서 Word 문서를 편집하는 방법을 배웠습니다. Python에서 REST API를 사용하여 DOCX 파일에 테이블을 추가하거나 이미지를 삽입하는 방법도 살펴보았습니다. 이 기사에서는 프로그래밍 방식으로 DOCX 파일을 클라우드에 업로드한 다음 클라우드에서 편집된 파일을 다운로드하는 방법도 설명했습니다. 또한 문서를 사용하여 GroupDocs.Editor Cloud API에 대해 자세히 알아볼 수 있습니다. 또한 브라우저를 통해 직접 API를 시각화하고 상호 작용할 수 있는 API 참조 섹션을 제공합니다. 모호한 점이 있으면 언제든지 포럼으로 문의해 주십시오.

또한보십시오