GroupDocs.Assembly Cloud SDK for Python은(는) 개발자가 계약서, 청구서, 선적 보고서, 영업 제안서, 재고 목록 및 기타 많은 비즈니스 핵심 문서와 같이 풍부하게 서식이 지정된 문서 생성을 자동화하도록 지원합니다. 이 솔루션은 완전한 클라우드 기반이며 REST API를 통해 액세스됩니다. 따라서 HTTP 요청을 보낼 수 있는 모든 Python 애플리케이션은 서버 측 소프트웨어나 타사 도구를 설치하지 않고도 필요 시 문서를 생성할 수 있습니다.
플랫폼의 핵심은 특수 자리표시자 필드와 프로그래밍 구문을 포함하는 document templates와 함께 작동합니다. 이 자리표시자들은 XML 또는 JSON와 같은 데이터 소스에서 가져온 값을 LINQ‑스타일 표현식 구문을 사용하여 자동으로 대체합니다. 이 강력한 접근 방식을 통해 이미지, 차트, 바코드를 삽입하고, HTML 출력에 대한 배경 색상을 설정하며, 배열 데이터에서 동적 테이블 및 목록을 생성하고, 조건부 로직을 적용하여 문서의 섹션을 포함하거나 제외할 수 있습니다. SDK가 다양한 입력 및 출력 형식을 지원하기 때문에 DOCX 템플릿에서 PDF를 생성하거나, HTML 보고서를 만들거나, 추가 변환 단계 없이 OpenDocument 파일을 출력할 수 있습니다.
Python에서 일반적인 워크플로는 세 가지 간단한 단계로 구성됩니다:
1️⃣ 템플릿 생성 – Word, Excel, PowerPoint 또는 지원되는 모든 Office/OpenOffice 파일을 설계하고 자리표시자 필드와 생성 규칙을 삽입합니다.
2️⃣ 데이터 소스 준비 – 템플릿에 정의된 자리표시자와 일치하도록 XML 또는 JSON 형식으로 데이터를 제공합니다.
3️⃣ Python 코드를 몇 줄 작성 – groupdocsassemblycloud 패키지를 사용해 템플릿을 GroupDocs Cloud Storage에 업로드하고, 원하는 출력 형식과 함께 데이터 소스를 전달한 뒤 AssembleDocument 작업을 호출합니다. API는 조립된 문서를 응답에 직접 반환하거나 클라우드에 저장하여 나중에 검색할 수 있게 합니다.
모든 상호 작용은 SSL/TLS 암호화로 보호되며, 인증은 개인 App SID와 App Key를 통해 수행됩니다. 이를 통해 문서와 데이터가 클라우드에서 처리되는 동안에도 안전하게 보호됩니다. SDK의 크로스 플랫폼 특성으로 문서 생성을 웹 서비스, 배치 작업, 데스크톱 애플리케이션 또는 서버리스 함수에 통합할 수 있으며, 인쇄 가능하고 웹 준비된 혹은 이메일 준비된 문서를 즉시 그리고 안정적으로 제공할 수 있습니다.
이 Python 예제는 템플릿을 업로드하고 데이터 파일을 바인드한 뒤 GroupDocs Assembly Cloud SDK를 사용하여 출력 문서를 생성하는 방법을 보여줍니다.
Steps
AssemblyApi을 초기화합니다.TemplateFileInfo와 AssembleOptions를 생성합니다.assemble_document을 호출합니다.import groupdocsassemblycloud
# Initialize API client (replace with your credentials)
assembly_api = groupdocsassemblycloud.AssemblyApi('####################', '####################')
# 1️⃣ Upload the template
file_name = 'Input1.docx'
with open(file_name, 'rb') as request_file_content:
upload_request = groupdocsassemblycloud.models.requests.UploadFileRequest(
file_content=request_file_content,
path=file_name
)
assembly_api.upload_file(upload_request)
# 2️⃣ Load data source (could be XML, JSON or DOCX)
data_file = 'Input2.docx'
with open(data_file, 'rb') as data:
template_info = groupdocsassemblycloud.models.TemplateFileInfo(file_name)
# 3️⃣ Set assemble options (output format: docx)
assemble_options = groupdocsassemblycloud.models.AssembleOptions(
template_info,
"docx",
data
)
# 4️⃣ Assemble the document
request = groupdocsassemblycloud.models.requests.AssembleDocumentRequest(assemble_options)
result = assembly_api.assemble_document(request)
print("Document generated successfully:", result.path)